Bug 679820

Summary: Review Request: drupal7 - An open-source content-management platform
Product: [Fedora] Fedora Reporter: Gwyn Ciesla <gwync>
Component: Package ReviewAssignee: Paul W. Frields <stickster>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: fedora-package-review, notting, stickster, volker27
Target Milestone: ---Flags: stickster: fedora-review+
j: fedora-cvs+
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: drupal7-7.0-4.el5 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-04-15 20:49:49 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 Gwyn Ciesla 2011-02-23 15:30:19 UTC
Description:

Equipped with a powerful blend of features, Drupal is a Content Management 
System written in PHP that can support a variety of websites ranging from
personal weblogs to large community-driven websites.  Drupal is highly
configurable, skinnable, and secure.


SPEC: http://zanoni.jcomserv.net/fedora/drupal7/drupal7.spec
SRPM: http://zanoni.jcomserv.net/fedora/drupal7/drupal7-7.0-1.fc14.src.rpm

Paralell-installable with Drupal 6, works, requires temporary disablng of httpd SELinux module during install, works once re-enabled.

Comment 1 Volker Fröhlich 2011-02-23 22:31:27 UTC
The license is GPLv2+.

http://drupal.org/licensing/faq/#q1

Comment 2 Jason Tibbitts 2011-02-25 03:42:48 UTC
What package are you renaming to drupal7?  This looks like a regular old review to me.

Comment 3 Gwyn Ciesla 2011-02-25 13:20:22 UTC
<sigh>  glibc, obviously. :)  Corrected, finger_FAIL.

License tag corrected.

SPEC: http://zanoni.jcomserv.net/fedora/drupal7/drupal7.spec
SRPM: http://zanoni.jcomserv.net/fedora/drupal7/drupal7-7.0-2.fc14.src.rpm

Comment 4 Paul W. Frields 2011-03-26 20:29:56 UTC
[ FIX ] MUST: rpmlint must be run on every package. The output should be posted
in the review.

$ rpmlint rpmbuild/SPECS/drupal7.spec rpmbuild/SRPMS/drupal7-7.0-2.fc15.src.rpm rpmbuild/RPMS/noarch/drupal7-7.0-2.fc15.noarch.rpm 
drupal7.src: W: spelling-error %description -l en_US weblogs -> we blogs, we-blogs, web logs
drupal7.src: W: spelling-error %description -l en_US Drupal -> Quadrupedal
drupal7.src: W: spelling-error %description -l en_US skinnable -> winnable
drupal7.noarch: W: spelling-error %description -l en_US weblogs -> we blogs, we-blogs, web logs
drupal7.noarch: W: spelling-error %description -l en_US Drupal -> Quadrupedal
drupal7.noarch: W: spelling-error %description -l en_US skinnable -> winnable
drupal7.noarch: W: non-conffile-in-etc /etc/drupal7/example.sites.php
drupal7.noarch: E: non-standard-dir-perm /var/lib/drupal7/files 0775L
drupal7.noarch: E: executable-marked-as-config-file /etc/cron.hourly/drupal7
drupal7.noarch: E: non-standard-dir-perm /var/lib/drupal7 0775L
drupal7.noarch: W: dangling-relative-symlink /usr/share/drupal7/sites ../../../etc/drupal7
drupal7.noarch: E: htaccess-file /usr/share/drupal7/.htaccess
drupal7.noarch: E: non-standard-dir-perm /var/lib/drupal7/files/default 0775L
2 packages and 1 specfiles checked; 5 errors, 8 warnings.

* The warnings/errors for spelling, the cronjob executable, the
  htaccess file, and the mode 775 directories can all be safely
  ignored.

* The symbolic link /usr/share/drupal7/sites should be corrected to
  point explicitly to -> ../../../etc/drupal7/sites

* The example.sites.php file should be moved to %doc or marked %config
  or %config(noreplace).

[ O K ] MUST: The package must be named according to the Package Naming
Guidelines.

[ O K ] MUST: The spec file name must match the base package %{name}, in the
format %{name}.spec unless your package has an exemption.

[ FIX ] MUST: The package must meet the Packaging Guidelines.

* According to http://drupal.org/requirements Drupal 7 requires
  php-pdo and php-xml

[ O K ] MUST: The package must be licensed with a Fedora approved license and
meet the Licensing Guidelines.

[ FIX ] MUST: The License field in the package spec file must match the actual
license. 

* The license should read GPLv2+ and BSD -- see
  /usr/share/drupal7/modules/system/system.tar.inc

[ FIX ] 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 must be included in %doc.

* Given the above, enter a copy of the license into a file called
  "BSD" and include that in %doc.

[ O K ] MUST: The spec file must be written in American English. 

[ O K ] MUST: The spec file for the package MUST be legible. 

[ O K ] MUST: The sources used to build the package must match the upstream
source, as provided in the spec URL. Reviewers should use md5sum for this task.
If no upstream URL can be specified for this package, please see the Source URL
Guidelines for how to deal with this.

$ md5sum rpmbuild/SOURCES/drupal-7.0.tar.gz ; curl -s -o - http://ftp.drupal.org/files/projects/drupal-7.0.tar.gz | md5sum -
e96c0a5e47c5d7706897384069dfb920  rpmbuild/SOURCES/drupal-7.0.tar.gz
e96c0a5e47c5d7706897384069dfb920  -

[ O K ] MUST: The package MUST successfully compile and build into binary rpms
on at least one primary architecture. 

[ N/A ] MUST: If the package does not successfully compile, build or work on an
architecture, then those architectures should be listed in the spec in
ExcludeArch. Each architecture listed in ExcludeArch MUST have a bug filed in
bugzilla, describing the reason that the package does not compile/build/work on
that architecture. The bug number MUST be placed in a comment, next to the
corresponding ExcludeArch line. 

[ O K ] MUST: All build dependencies must be listed in BuildRequires, except
for any that are listed in the exceptions section of the Packaging Guidelines ;
inclusion of those as BuildRequires is optional. Apply common sense.

[ O K ] MUST: The spec file MUST handle locales properly. This is done by using
the %find_lang macro. Using %{_datadir}/locale/* is strictly forbidden.

[ O K ] MUST: Every binary RPM package (or subpackage) which stores shared
library files (not just symlinks) in any of the dynamic linker's default paths,
must call ldconfig in %post and %postun. 

[ O K ] MUST: Packages must NOT bundle copies of system libraries.

[ O K ] MUST: If the package is designed to be relocatable, the packager must
state this fact in the request for review, along with the rationalization for
relocation of that specific package. Without this, use of Prefix: /usr is
considered a blocker. 

[ O K ] MUST: A package must own all directories that it creates. If it does
not create a directory that it uses, then it should require a package which
does create that directory. 

[ O K ] MUST: A Fedora package must not list a file more than once in the spec
file's %files listings. (Notable exception: license texts in specific
situations)

warning: File listed twice: /etc/drupal7/all
warning: File listed twice: /etc/drupal7/default

* I doubt this is an issue when the files in question are symbolic
  links.  I think this is safe to ignore.  (N.B. it's the same
  situation for the already approved drupal6 package.)

[ O K ] MUST: Permissions on files must be set properly. Executables should be
set with executable permissions, for example. Every %files section must include
a %defattr(...) line.

* The above rpmlint fuzz notwithstanding.

[ O K ] MUST: Each package must consistently use macros. 

[ O K ] MUST: The package must contain code, or permissable content. 

[ O K ] MUST: Large documentation files must go in a -doc subpackage. (The
definition of large is left up to the packager's best judgement, but is not
restricted to size. Large can refer to either size or quantity). 

[ O K ] MUST: If a package includes something as %doc, it must not affect the
runtime of the application. To summarize: If it is in %doc, the program must
run properly if it is not present. 

[ N/A ] MUST: Header files must be in a -devel package. 

[ N/A ] MUST: Static libraries must be in a -static package. 

[ N/A ] MUST: If a package contains library files with a suffix (e.g.
libfoo.so.1.1), then library files that end in .so (without suffix) must go in
a -devel package. 

[ N/A ] MUST: In the vast majority of cases, devel packages must require the
base package using a fully versioned dependency: Requires: %{name} =
%{version}-%{release} 

[ O K ] MUST: Packages must NOT contain any .la libtool archives, these must be
removed in the spec if they are built.

[ O K ] MUST: Packages containing GUI applications must include a
%{name}.desktop file, and that file must be properly installed with
desktop-file-install in the %install section. If you feel that your packaged
GUI application does not need a .desktop file, you must put a comment in the
spec file with your explanation. 

[ O K ] MUST: Packages must not own files or directories already owned by other
packages. The rule of thumb here is that the first package to be installed
should own the files or directories that other packages may rely upon. This
means, for example, that no package in Fedora should ever share ownership with
any of the files or directories owned by the filesystem or man package. If you
feel that you have a good reason to own a file or directory that another
package owns, then please present that at package review time. 

[ O K ] MUST: All filenames in rpm packages must be valid UTF-8.

* * *

I'll wait to see the next iteration, and I promise you a much shorter
wait for the next review turnaround. :-)

Comment 5 Gwyn Ciesla 2011-03-29 13:44:35 UTC
Fixed the above, one question, the BSD license is in the COPYRIGHT.txt, is that sufficient?

SPEC: http://zanoni.jcomserv.net/fedora/drupal7/drupal7.spec
SRPM: http://zanoni.jcomserv.net/fedora/drupal7/drupal7-7.0-3.fc14.src.rpm

Comment 6 Paul W. Frields 2011-03-29 20:23:34 UTC
Yes, I had missed the BSD appearance in COPYRIGHT.txt, sorry.  I'll update the review shortly!

Comment 7 Paul W. Frields 2011-04-06 00:03:58 UTC
Two more corrections:

* Add an %exclude for COPYRIGHT.txt and for README.txt (which both end up in %{_datadir}/drupal7 otherwise)

* /usr/share/drupal7/sites is still a broken symlink here.  I think you want this in the spec instead:
ln -s ../../..%{_sysconfdir}/%{name} %{buildroot}%{drupaldir}/sites

I'm going to assume you'll take care of this before importing, using a -4 release.  Provides those fixes are made, this review's APPROVED.

Comment 8 Gwyn Ciesla 2011-04-06 12:59:59 UTC
Fixed, will import.

Thanks so much for the review, and all your help with the rename project.  Other than the last two modules, whose paths I've at least corrected, it's finished.

New Package SCM Request
=======================
Package Name: drupal7
Short Description: An open-source content-management platform
Owners: limb
Branches: f14 f15 el6 el5
InitialCC:

Comment 9 Jason Tibbitts 2011-04-06 17:57:19 UTC
Git done (by process-git-requests).

Comment 10 Gwyn Ciesla 2011-04-06 18:03:40 UTC
Awesome, thanks!

Comment 11 Fedora Update System 2011-04-06 18:48:23 UTC
drupal7-7.0-4.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/drupal7-7.0-4.fc15

Comment 12 Fedora Update System 2011-04-06 18:48:30 UTC
drupal7-7.0-4.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/drupal7-7.0-4.el6

Comment 13 Fedora Update System 2011-04-06 18:48:38 UTC
drupal7-7.0-4.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/drupal7-7.0-4.fc14

Comment 14 Fedora Update System 2011-04-06 18:48:45 UTC
drupal7-7.0-4.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/drupal7-7.0-4.el5

Comment 15 Fedora Update System 2011-04-06 22:51:26 UTC
drupal7-7.0-4.el5 has been pushed to the Fedora EPEL 5 testing repository.

Comment 16 Fedora Update System 2011-04-15 20:49:42 UTC
drupal7-7.0-4.fc14 has been pushed to the Fedora 14 stable repository.

Comment 17 Fedora Update System 2011-04-15 21:49:46 UTC
drupal7-7.0-4.fc15 has been pushed to the Fedora 15 stable repository.

Comment 18 Fedora Update System 2011-04-21 19:54:36 UTC
drupal7-7.0-4.el6 has been pushed to the Fedora EPEL 6 stable repository.

Comment 19 Fedora Update System 2011-04-21 19:55:44 UTC
drupal7-7.0-4.el5 has been pushed to the Fedora EPEL 5 stable repository.