Last updated 19 April 2017.

Once you're ready to provide a downloadable .tar.gz/.zip file of your project code, follow these steps to create a release. You can create either an official release or a development release. Read more about the types of releases.

Enabling releases

If you have not yet promoted your sandbox to a full release, do so now.

  1. Click the Edit tab > Promote sub-tab on your project page.
  2. Check the box "I understand..." and enter a project short name (this will be the url of your module: drupal.org/project/[short-name]). If you don't do this, you will not see a link to Add new release on your project page.

Creating an official release

  1. Click the Version control tab on your project page, and follow the instructions labeled Tag for a stable release.
  2. Return to the main project page, and then click the Add new release link at the bottom of the page.
  3. Select your tag, such as 7.x-1.0, and save the form.
  4. Select the terms that correspond to the nature of the release (Features, Bug fixes), and fill out release notes.
  5. Click Save. An unpublished release node appears. Drupal.org publishes this node within 5 minutes and attaches automatically-generated .tar.gz and .zip files of your project code.

Creating a development release

New process

Note that the process for development releases has recently changed.

  1. Click the Version control tab on your project page, and follow the instructions labeled Branch for a dev release.
  2. Return to the main project page, and click the Add new release link at the bottom of the page.
  3. Select your branch, such as 7.x-1.x, and save the form.
  4. Select the terms that correspond to the nature of the release (Features, Bug fixes) and fill out release notes.
  5. Development releases are not displayed on your project page by default. If you'd like the development release to appear as an option in your project's page, check the box labeled Show in project’s download table when branch is supported.
    Release edit page
    That option can be found on the individual release page (to get to that page, click View all releases, click on the release to show, such as "yourmodule 7.x-1.x-dev", and click the edit button.
  6. Click Save. An unpublished release node is created. This can be viewed by clicking View all releases. Drupal.org publishes this node within 12 hours and attaches automatically-generated .tar.gz and .zip files of your project code.

Note: Download links will take approximately 10 minutes to publish after your release has been created.

Also note: Git submodules, while allowed by the repositories on drupal.org, will not be included in releases.

AttachmentSize
drupal-show-dev-branch.png125.18 KB

Comments

AaronELBorg’s picture

UPDATE: Fixed the issue but I'll leave everything here for others to see. The 'EDIT' below contains the fix.
----------------------------------------------------------------------------------------------------------------------------------------

I've just been given the 'git vetted user' role and am trying to release my first stable release.

However, when I do this:

git checkout  6.x-1.x
git tag 6.x-1.0
git push origin 6.x-1.0

I'm getting this:

fatal: remote error: Repository does not exist. Verify that your remote is correct.

Is this something to do with the fact that I'm pushing to a 'sandbox' and it's no longer a 'sandbox' since it's now an official project? Perhaps I need to change my config file?

Thanks for any info.
-----------------------------------------------------------------------------------------------------------------------------------

EDIT: Fixed it.

The issue was that my config did indeed need to be changed from the 'sandbox' one to my project page. (Actually, it was that combined with the fact that I needed a valid branch name (6.x-1.x) and a valid tag name (6.x-1.0) as well. Ended up having to delete a branch that I erroneously created called 6.x-1.0.....that's a no-go).

This issue: http://drupal.org/node/1292020
....saved me because Ben Scott included his config.txt. Nice work, Ben Scott. Nice work.

YesCT’s picture

I ended up here looking for the answer to the question
"After committing to the dev branch, how soon is the dev release repackaged? (When is the new tar.gz available on the project page?)"

in irc, people thought packages were recreated twice a day at 00:00 and 12:00,

#2100727: Increase frequency of dev package runs says 4 times a day

#1968332-4: Test release packaging with queuing says: "Once a tagged release is created, the .tar.gz and .zip packages should appear when the cron_release-package-run_git7 Jenkins job runs, currently hourly. Commits to dev releases should trigger a repackaging on the same schedule."

Is the answer already documented somewhere?
If not, should we document it here? (Do we think maintainers will look here for the answer?)

[this, like all comments on docs pages, will be deleted when the information is merged into the body of an actual docs page]

Michelle’s picture

I know it used to be twice a day but that was back in the CVS days. So it's possible that the people on IRC are remembering that and things have changed with git.

asherry’s picture

How exactly do you add release notes for a particular release? Do you just write the html links out to each solved issue manually, or is there something that is parsed to get that type of list.
Something like this:
https://www.drupal.org/node/2271305
Where it says "Changes since...". Is that auto-populated somehow or is that just manually written out?

Thanks!

Matt V.’s picture

@asherry,

You might find Ted Bowman's git-changes script handy. It wraps the output of git log in some html that you can drop straight into the "Release notes" section, similar to what you linked to in the Views release notes.

jcnventura’s picture

Use the GRN project (https://www.drupal.org/project/grn)

It's very easy to setup and it does everything you need to create the release notes.

João Ventura
Venturas.org

AlexBorsody’s picture

I found the drush script helpful.

cburschka’s picture

If you'd like the development release to appear as an option in your project's downloads section, click the 'Administer releases' link at the bottom of the project page, and check the 'Show snapshot release' checkbox beside the appropriate branch.

This checkbox no longer exists on the release overview.

It must be enabled while creating or editing the release itself, by checking a box labeled "Show in project’s download table when branch is supported."

quantumized’s picture

Thank you! I would not have figured out that change myself. Glad you posted this.

doitDave’s picture

Helped me, too. I also updated the page above. I figure there are still more people to miss the old "show dev snapshot" checkbox.

Thanks for outlining.