Bug 959683

Summary: drupal7: Add auto-provides
Product: [Fedora] Fedora Reporter: Shawn Iwinski <shawn>
Component: drupal7Assignee: Gwyn Ciesla <gwync>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: gwync, peter, stickster
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: drupal7-7.22-5.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-05-14 04:48:45 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
Adds auto-provides to spec
none
RPM attributes file
none
RPM auto-provides script none

Description Shawn Iwinski 2013-05-04 19:57:03 UTC
Created attachment 743574 [details]
Adds auto-provides to spec

Description of problem:
Current drupal7 packages do not include virtual provides (i.e. "drupal7(drupal_machine_name)") of all sub-modules and this makes it difficult to track down package dependencies at times.  I started adding these to my drupal7 packages but this became very tedious.  I would like the drupal7-rpmbuild package itself to use RPM's auto-provides functionality.  The attached spec patch and files add this functionality.


Version-Release number of selected component (if applicable):
drupal7-7.22-1

  
Actual results:
No virtual auto-provides generated when building RPM packages.


Expected results:
Virtual auto-provides generated when building RPM packages.


Additional info:
* This is the same approach I am using for the drupal8 packaging (https://github.com/siwinski/drupal8-rpms/tree/master/core)
* I copied the same license that the NodeJS auto-provides script uses (http://pkgs.fedoraproject.org/cgit/nodejs.git/tree/nodejs.prov) which is MIT.  However, the drupal7 package itself already lists BSD so feel free to change the drupal7.prov license text to BSD if you feel that is the correct thing to do (be sure to remove MIT from the License field in the spec which is added by the attached patch if you do this).

Comment 1 Shawn Iwinski 2013-05-04 19:57:40 UTC
Created attachment 743575 [details]
RPM attributes file

Comment 2 Shawn Iwinski 2013-05-04 19:58:02 UTC
Created attachment 743576 [details]
RPM auto-provides script

Comment 3 Gwyn Ciesla 2013-05-07 14:58:58 UTC
Can you give me a quick summary of the benefits this will provide?

Comment 4 Shawn Iwinski 2013-05-08 18:27:06 UTC
(In reply to comment #3)
> Can you give me a quick summary of the benefits this will provide?

Sure!  It helps with pkg dependencies (both for the packager and the reviewer).  By using virtual provides for all the modules a pkg provides we can simply require the virtual provides "drupal7(drupal_machine_name)" instead of the pkg name "drupal7-drupal_machine_name".  While this does not provide much value for modules that only provide their main module name, it helps out significantly when a module provide submodules.  For example, the i18n module (http://drupal.org/project/i18n) would virtually provide: drupal7(i18n), drupal7(i18n_block), drupal7(i18n_contact), drupal7(i18n_field), drupal7(i18n_forum), drupal7(i18n_menu), drupal7(i18n_node), drupal7(i18n_path), drupal7(i18n_path), drupal7(i18n_redirect), drupal7(i18n_select), drupal7(i18n_string), drupal7(i18n_sync), drupal7(i18n_taxonomy), drupal7(i18n_translation), drupal7(i18n_user), drupal7(i18n_variable).  A packager could then be require something like "Require: drupal7(i18n_node)" instead of he/she or the reviewer having to figure out if that is a separate module or a submodule of another module.  Also, by auto-providing these virtual provides, packagers will not have to manually specify these in packages (which I can confirm would be helpful!).

Note that virtual provides like this are used for all PEAR packages ("php-pear(pkg)" or if a non-official channel "php-pear(channel/pkg)").

Comment 5 Gwyn Ciesla 2013-05-09 13:16:14 UTC
Seems reasonable.  Updates forthcoming.

Comment 6 Fedora Update System 2013-05-09 13:52:25 UTC
drupal7-7.22-3.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/drupal7-7.22-3.el6

Comment 7 Fedora Update System 2013-05-09 13:52:36 UTC
drupal7-7.22-3.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/drupal7-7.22-3.fc17

Comment 8 Fedora Update System 2013-05-09 13:52:48 UTC
drupal7-7.22-3.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/drupal7-7.22-3.el5

Comment 9 Fedora Update System 2013-05-09 13:53:01 UTC
drupal7-7.22-3.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/drupal7-7.22-3.fc18

Comment 10 Fedora Update System 2013-05-09 13:53:22 UTC
drupal7-7.22-3.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/drupal7-7.22-3.fc19

Comment 11 Fedora Update System 2013-05-09 20:22:39 UTC
Package drupal7-7.22-3.el6:
* should fix your issue,
* was pushed to the Fedora EPEL 6 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing drupal7-7.22-3.el6'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2013-5730/drupal7-7.22-3.el6
then log in and leave karma (feedback).

Comment 12 Shawn Iwinski 2013-05-13 14:03:57 UTC
I'm not sure if my email to the drupal-devel mailing list went through so I am posting a link to the archive text here: http://lists.fedoraproject.org/pipermail/drupal-devel/2013-May/000000.html

Comment 13 Gwyn Ciesla 2013-05-13 14:05:03 UTC
It did.  I simply had nothing of value to contribute.  If the silence persists, try -devel.

Comment 14 Shawn Iwinski 2013-05-13 16:50:54 UTC
(In reply to comment #13)
> It did.  I simply had nothing of value to contribute.  If the silence
> persists, try -devel.

I am glad to know it went through!  From my end it looked like it didn't.  I will post on -devel.  Thanks!

Comment 15 Fedora Update System 2013-05-14 04:48:45 UTC
drupal7-7.22-3.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 16 Fedora Update System 2013-05-19 02:33:11 UTC
drupal7-7.22-3.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 17 Fedora Update System 2013-05-21 20:21:20 UTC
drupal7-7.22-4.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/drupal7-7.22-4.fc17

Comment 18 Fedora Update System 2013-05-21 20:21:40 UTC
drupal7-7.22-4.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/drupal7-7.22-4.el6

Comment 19 Fedora Update System 2013-05-21 20:22:02 UTC
drupal7-7.22-4.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/drupal7-7.22-4.fc18

Comment 20 Fedora Update System 2013-05-21 20:22:25 UTC
drupal7-7.22-4.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/drupal7-7.22-4.el5

Comment 21 Fedora Update System 2013-05-21 20:22:46 UTC
drupal7-7.22-4.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/drupal7-7.22-4.fc19

Comment 22 Fedora Update System 2013-05-31 04:24:55 UTC
drupal7-7.22-4.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 23 Fedora Update System 2013-05-31 04:27:53 UTC
drupal7-7.22-4.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 24 Fedora Update System 2013-06-01 03:22:55 UTC
drupal7-7.22-4.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 25 Fedora Update System 2013-06-03 15:46:54 UTC
drupal7-7.22-5.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/drupal7-7.22-5.fc19

Comment 26 Fedora Update System 2013-06-03 15:47:22 UTC
drupal7-7.22-5.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/drupal7-7.22-5.el6

Comment 27 Fedora Update System 2013-06-03 15:47:46 UTC
drupal7-7.22-5.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/drupal7-7.22-5.fc17

Comment 28 Fedora Update System 2013-06-03 15:48:12 UTC
drupal7-7.22-5.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/drupal7-7.22-5.el5

Comment 29 Fedora Update System 2013-06-03 15:48:35 UTC
drupal7-7.22-5.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/drupal7-7.22-5.fc18

Comment 30 Fedora Update System 2013-06-13 06:47:46 UTC
drupal7-7.22-5.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 31 Fedora Update System 2013-06-14 02:29:15 UTC
drupal7-7.22-5.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 32 Fedora Update System 2013-06-14 02:30:08 UTC
drupal7-7.22-5.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 33 Fedora Update System 2013-06-18 20:46:43 UTC
drupal7-7.22-5.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 34 Fedora Update System 2013-06-18 20:47:46 UTC
drupal7-7.22-5.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.