Tails tasks are managed in a Redmine project.

If you need to do something in Redmine and you appear to lack the needed credentials, please ask tails-sysadmins@boum.org to give you more power.

Some documentation about how we are using Redmine is available in the working together pages. See also the review and merge process documentation.

Tinkering with Redmine is an important part of the Ticket gardener role.

Atom feeds

Each custom query listed in the Redmine sidebar has an Atom feed.

Tracking review'n'merge requests

Subscribe to:

How to use Redmine's Atom feeds

To use a Redmine Atom feed:

  1. Go to the custom query you want to track.
  2. Look for the Atom link at the bottom of the page.
  3. Point your feed reader to that link.

Email commands

This only works by sending mails from an email address associated with a Redmine account. For details, see the corresponding documentation on the Redmine website.

Creating a ticket by email

You need to provide all the required fields in the body of the email, and the syntax is case sensitive. For example this works:

To: redmine@labs.riseup.net
Subject: Test creating a ticket by email

    Project: tails
    Tracker: Feature
    Status: Confirmed
    Priority: Low
    Type of work: Test

    It should be possible to create a ticket by sending an email to Redmine.

If you send attachments with your email they will also be attached to the ticket. For example your OpenPGP signature :)

Updating a ticket by email

An easy trick is to reply to an email notification about that ticket. Then only include in the body of the email the fields that you want to change, and a description for your changes. For example:

To: redmine@labs.riseup.net
Subject: Re: [Tails - Feature #6813] (Confirmed) Test creating a ticket by email

Status: Resolved

This works but Redmine is quite picky on the syntax...

How to use Redmine fields

It is important to be consistent in the use of the fields to make collective work easier. See document progress for more on this topic.

Please take a time to see how we use the fields of Redmine:

  • Subject:
    • The Subject should be a short but clear description of what the ticket is about. Some people are case sensitive, please try to consider that.
  • Description:
    • For the preferred style of this field when reporting a bug, refer to our bug reporting instructions. Features or Discuss tickets may follow a different style.
  • Status:
    • New:
      • New users' tickets are marked always as new. If a Tails contributor can reproduce the issue, it should be marked as Confirmed.
      • Help desk team is in charge of keeping an eye on them.
    • Confirmed:
      • Tails contributors can reproduce the issue.
    • In Progress:
      • Some work towards resolution has been done.
      • Added by Redmine automatically when a Git commit with will-fix: #NNNN is added to the Tails repository. This keyword should be only used in topic branches.
    • Fix committed:
      • The fix has been merged into the main Tails Git repository.
      • Added by Redmine automatically when a Git commit with fix-committed: #NNNN is added to the Tails repository.
    • Resolved:
      • Fix is on current Tails.
    • Duplicate:
      • Another ticket in Redmine covers this issue. Do not forget the related issue! You can add a related issue from the 'Related issues' section on the ticket.
    • Rejected:
      • Not applicable, not a Tails problem, being worked on elsewhere.
  • Priority
    • Low:
      • It would be good to have it, but nobody is volunteering to do it.
    • Elevated:
      • Regressions are always marked as Elevated.
  • Assignee:
    • Assign yourself to a ticket if you are working on it to prevent duplicated work.
    • Assign a ticket marking QA check as Info needed to get information from someone.
  • Category:
    • This are usually transversal issues, not specific tools.
  • Target version:
    • The Tails release this ticket aims to be fixed for.
    • If submitting code, the Tails release you would like your changes to be in.
  • QA Check (quality assurance):
    • Info Needed:
      • If you want to work on this ticket but you need more information, select this option, ideally along with an assignee and a note about what to do after the information has been given (reassign to you?).
      • Answering such tickets quickly when they are assigned to you is very important to speed up development.
    • Ready for QA:
      • When your code is ready to fix this ticket, you can set this option, usually accompanied by a Git branch to review. Read our merge policy to know more.
    • Pass:
      • When a reviewer has reviewed submitted code can set this field to pass, and can be merged to tails repository.
  • Feature Branch:
    • Add the information of the branch for this issue in the format repositoryname:branch, or only the branch name if it's on Tails repository.
  • Type of work:
    • Communicate:
      • Inside or outside of Tails (for example, with other projects).
    • Contributors documentation:
      • Everything below /contribute on the website.
    • Debian:
      • Related or to be done on the Debian project.
    • Discuss:
      • Discuss tickets are reviewed to discuss during the monthly Tails contributors meeting.
    • End-user documentation:
      • Everything below /doc on the website.
    • Wait:
      • Used when waiting for input from other projects.
    • Website:
      • All website work not covered by other options.
  • Watchers:
    • If you think somebody might be interested on this ticket although not as assignee, you can add them as a watcher. They will receive an email with information every time the ticket gets updated.
    • If you create a ticket you will receive updates like a watcher.
    • If you comment on a ticket, you're not automatically a watcher.
  • Parent task:
    • It is always good to add it if there is any. Sometimes we use this field to organize work that spans over many tickets. See for example: #7584.
  • Blueprint:
  • Starter:
    • Issues flagged as Starter on Redmine are a great tool for new contributors getting into Tails. Learn more.

Core team's work

Some of the teams who do Core work (be it paid or done on a volunteer basis) maintain Redmine metadata in order to:

  • provide visibility on what they doing & their priorities;

  • give the Tails community some power over setting these priorities;

  • allow the Tails community to help core workers define their priorities: they sometimes have a hard time deciding by themselves how they should spend their time on what matters the most to the project.

In the Redmine sidebar, you can see a bunch of views whose name starts with Core work.

The teams who use this mechanism are more than happy to get feedback about these priorities: both addition and removal suggestions are welcome. Please check the mission statement for the corresponding team first, to ensure you're not asking them to do something that's outside of the scope of their job. And please justify your suggestions. Please check these views once in a while and talk to us! :)