Problem/Motivation
New documentation is needed on usage statistics for distributions.
In recent months, part of the distributions / installation profiles have started to get usage statistics. They are mainly Drupal 7 distributions, but there are also a few on Drupal 6. However, it appears there is not yet specific documentation on usage statistics for distributions.
Proposed resolution
Find out what exactly distribution maintainers should do in order to obtain usage statistics for Drupal 6 and Drupal 7 versions, and document it.
Current documentation on related topics:
- Popularity of modules - On usage stats.
- Update manager (and Update status) - In core, D6 and D7.
- Update Status - Contrib, D5.
- Distributions - Docs.
- Packaging a profile on drupal.org - Building drupal-org.make file, etc.
- Distribution Packaging - Community initiative.
Related issues:
- #80272: Make install profiles updatable
- #94154: update.module in core (formerly known as update_status)
- #509392: Introduce .info files for install profiles
- #509398: Install profiles should be modules with full access to the Drupal API and all it entails(.install files, dependencies, update_x)
- #509404: Fix some conceptual problems with install profiles and make them actually usable
- #779476: Remove commit restrictions for installation profiles
- #907868: Default sort of "Most installed" doesn't make sense in all cases
- #1314124: [META] Improve installation profile listing on Drupal.org
- #1349782: Create an initial list of distributions to populate listing page
- Usage statistics issue queue
Remaining tasks
In the weeks after this documentation is added, check if distributions more generally begin to obtain usage stats.
User interface changes
None for now. Usage stats, and list order by "most installed", will just begin to work as intended for more distributions.
API changes
None. It's a documentation issue, to promote the current possibilities on usage statistics for distributions.
Comments
Comment #1
juan_g commentedThis issue has been reviewed/updated according to http://drupal.org/node/1204344 and is ready for someone to work on.
Comment #2
juan_g commentedRelated details from a recent discussion on this topic, Oct/Nov 2011, from #1314124: [META] Improve installation profile listing on Drupal.org, comments #5 to #9:
It seems greggles was referring to this other discussion, Aug/Sep 2010, from #779476: Remove commit restrictions for installation profiles, comments #10 to #14 (and about commons_release, it's a module, so that's the reason it doesn't appear in the install profiles listing):
I think basonjay was referring to the Commons Release Updater module, used until Commons 6.x-2.3. See #1335870: Remove Commons_release from Commons. They say, in the commons_release project page:
From Commons 2.4 Release notes:
Naturally, the commons_release module had an .info file. On the other hand, the Commons distribution doesn't seem to be using any .info file in the profile folder, only drupal_commons.profile; and, additionally, .make files since 6.x-2.4 (drupal_commons.make and commons-dev.make).
See also Usage statistics for Commons Release Updater (since 2011-01-09), and Usage statistics for Commons (since 2012-01-15).
That is, usage statistics seem to be working now for Commons, a D6 distribution, without need for a distro-specific module or an .info file.
How is this working? Is it related in some way to the new drupal_commons.make file?
Comment #3
jhodgdonJuan: Are you asking for someone else to write this documentation? Anyone can go to any page under http://drupal.org/documentation and click "Add child page" to add documentation. You seem to be in a good position to write this documentation... no need to file an issue, just go ahead and write it. :)
Comment #4
juan_g commentedWell, it's true that I would have written these missing docs directly, as I've done in other cases, if I had all the necessary data. That's why the issue summary says:
In fact I'm asking for assistance on some technical details about usage statistics for distributions, in order to write this documentation (others or myself).
For example, as explained above, details are needed on how usage statistics are working now for Commons, a D6 distribution, without need for an .info file or an already removed distro-specific module (since two weeks ago). This new development seems to have important implications for all distributions, I think.
Comment #5
dww@jhodgdon: Sorry for cluttering "your" issue queue with this. ;) Sadly, we don't really have a much better place to discuss this. Maybe the infra queue, but this isn't really an infra question...
@juan_g: Thanks for getting the ball rolling on this. Re: the current 6.x-2.4 release of commons -- it works because there are a ton of feature modules committed directly to the commons project Git repo. All of those have .info files. So, as I explained in the text you quoted me on in comment #2, those get modified by the d.o packaging script to include:
That's enough to tell update.module in D6 core to query the commons project for available releases, and that's what triggers usage tracking.
And lo, that's how you get a D6 profile to track usage: include some kind of module inside your profile's directory tree directly in Git. Could be a profile-specific plain module (e.g. a place to manage hook_update_N() if you need it, whatever) or profile-specific feature module(s). But, so long as you've got at least one of those, the usage tracking appears to all Just Work(tm) as expected.
Does that answer everything you need to know? Can you flesh out the appropriate docs just based on that?
Thanks!
-Derek
Comment #6
juan_g commentedAh, for D6, custom modules or features committed directly into the profile directory, with their .info files modified by the drupal.org packaging script to point Update Status core module to the profile/distribution project. That's really interesting, thanks dww.
A problem with distributions could be the update core module being frequently disabled. For example, from the Open Atrium documentation:
This is similar to what batsonjay said in a quote above (#2):
However, Update Status (D6) and Update Manager (D7) are necessary for usage stats.
So, a short draft for this documentation (intended for distribution maintainers) could be the following. Please point out any errors or possible improvements:
Comment #7
juan_g commentedThat's a possible text to review (Usage statistics for distributions, in comment #6).
Also, since the docs section Developing installation profiles in Develop for Drupal is for distro project maintainers, and Distributions in the Site Building Guide is more for users (site builders and administrators), this information seems more useful in the development section. It's a short text, however a new sub-page is probably suitable, given that the rest of sub-pages are different topics.
BTW, probably the Developing installation profiles section should be now, with the current developments at drupal.org, Developing installation profiles and distributions. I'm thinking on updating this title if there is no objection.
Comment #8
dwwHaven't had a chance to carefully go over everything you've got here, but a skim looks great.
While we're documenting all this, if distros really want to get crazy, they can use hook_update_status_alter() (also in D6) so that update module can remain enabled but still hide warnings about releases from projects managed by the distribution. That's better than using hook_update_projects_alter() since removing projects from the list at that point would prevent *those* modules from getting proper usage tracking. It's better for update module to keep fetching info for those, but just not display warnings for new releases.
In fact, maybe that's something update_advanced in contrib could provide and then distros could just include that and it'd all happen automatically. I just opened #1425522: Help manage updates for distributions about that.
Comment #9
juan_g commentedI've just added your excellent explanation to item #2 on the list. What you propose for the update_advanced module would be really important and useful for distributions, to have usage stats without confusing users about updates. It's a very suitable solution for this.
How about the following text? If there is not any serious error, we can publish it as it is now, and later anyone can edit and improve the handbook page when new data appear, etc.:
Comment #10
dwwWorks for me. I might quibble over some wording, but the technical info is sound and the word-smithing can just happen via the edit tab if needed. ;)
Thanks!
-Derek
Comment #11
juan_g commentedAgree; also English is ESL for me, but style, etc. can be corrected directly on the docs. Or, alternatively, we can consider adding the footer from chx's blog: ;)
All right, just added the new handbook page, Usage statistics for distributions. It's in the profile/distro development section; and, as suggested in #7, with the section title updated to "Developing installation profiles and distributions", according to the new naming from #1314124: [META] Improve installation profile listing on Drupal.org and related issues.
So, distributions have usage statistics available, and the docs now explain how, Thanks, dww!