Project releases

Projects can have releases associated with them by using the Project releases module, which comes with the Project module.

Project releases are identified by a version number and can have downloadable files associated with them.

Installation

After installing and enabling the Project module, enable the Project releases module from the modules administration page (Administer > Site building > Modules).

Permissions

The Project releases module does not create any additional permissions. Instead, it depends on the permissions defined by the Project module. Users with "access projects" permission can access project releases. Users with "maintain projects" permission can create and edit their own project releases. Users with "administer projects" permission can administer the Project releases module settings.

Configuration

Project release API compatibility

One powerful feature of the Project and Project releases modules is that you can track releases of a project by compatibility with a certain version of an API. For example, on drupal.org, each project release is tied to a certain version of the core Drupal API. If your site is hosting projects that do not all depend on one API/project/code base, then you may not need to configure the Project release API compatibility vocabulary.

When the Project releases module is first enabled (assuming the core Taxonomy module is also enabled), the Project releases module will create a vocabulary called "Project release API compatibility". To make changes to this vocabulary go to the categories administration page (Administer > Content management > Categories).

First, enable the "Project release API compatibility" vocabulary for the Project release content type by clicking the "edit vocabulary" link next to the vocabulary name. Next, add one or more terms to this vocabulary by clicking the "add terms" link. For example:

  • 4.x
  • 5.x
  • 6.x
  • 7.x

Project release module settings

Configuration of the Project releases module is done from the project release settings page (Administer > Project administration > Project release settings).

The "Default version format string" setting is used to control how the title of project release nodes will be automatically created. The help text below this setting describes what variables are available for use and how to add different delimiters between the variables. Note: If you have not configured the "Project release API compatibility" vocabulary as described in the previous section, the api variable will always be blank. However, if you have configured this vocabulary, then the api variable will contain the value of the term associated with a release.

The "Download link base URL" setting can be used if you wish for users to access files attached to project releases via a different URL than would normally be used on your site. See the description text below this setting for more information.

If you have configured the "Project release API compatibility" vocabulary and added terms to this vocabulary as described above, you will have additional settings on the Project release settings page.

The "Active Project release API compatibility terms" section contains checkboxes next to each term of the "Project release API compatibility" vocabulary. When a user on your site creates a project release, only the terms that are checked here will be available in the "Project release API compatibility" select box. For example, if version 4.x of your API is very old and outdated and you no longer wish for users to be able to associate releases with this version, you would uncheck the 4.x term here.
Note: If you have renamed the "Project release API compatibility" vocabulary on your site, the name of this setting will correspondingly change.

If you check the "Browse projects by release versions" setting, then when users browse projects on your site they will be able to limit the projects that are displayed to only show projects with a release associated with the selected "Project release API compatibility" term. To see an example of this select box, go to the Drupal Modules browse by category page.
The fact that this filter is not available to anonymous users of your site is not a bug! See this issue for more details.

The "Default release overview" setting can be used to specify whether only releases associated with a certain "Project release API compatibility" term should be listed on the Project overview page.

The concept of version numbers and how version numbers are used by the Project releases module can be difficult to grasp when starting out using the Project releases module. Version numbers are composed of a set of "elements". What these are will differ from site to site depending on the approach being taken. However, the drupal.org system may serve as a useful model for understanding how version numbering can be implemented. For details, see http://drupal.org/handbook/version-info#contrib.

Creating project releases

Although they are their own content type, project releases aren't created in the usual way (via the Create content menu item). Instead, to create a release you first bring up the project's page. From there you can click the "Create new release" link.

How do release nodes get packaged into downloadable files?

On drupal.org, we use project release in conjunction with Git to manage releases of Drupal core and all the contributions (modules, themes,

Setting up a site to serve release history files used by the "Update status" module

Included in the project/release directory of the Project module are a pair of scripts that can be used to export XML files that describe all

Guide maintainers

aclight's picture