Everything in Launchpad
This is a list of all the stuff in Launchpad. Think of it as all the features, all the moving parts, all the places where bugs live and where people can get things done.
We can use this list to promote Launchpad, to plan future development work, to be deliberate about what we are not doing and so forth.
If something is missing, add it. Feel free to add notes under each item. Don't worry too much about the categories, they are really there to break the list up.
The more the better. Don't worry if something is too small – add it anyway.
When you're adding stuff to this page, perhaps because a new feature has been implemented, please include the rough date when the feature was added, but only if you know it.
Launchpad Answers provides software projects with a simple way to track and answer questions. It draws on the approach of ticketing systems and bug trackers -- questions have statuses, comment histories and assignees -- but borrows the freedom of forums by allowing anyone to ask or answer a question.
- Ask a question
- Convert a question to a bug (without destroying original question)
- Assign a question to an individual or a team
- Answer contacts:
- individuals can volunteer to be an answer contact for a project or distro
- Launchpad emails answer contacts with new questions for their project(s)/distro(s)
- answer contacts can create new FAQs
- Supports questions and answers in multiple languages
- Individuals can chose their preferred languages
- Create new FAQs
- Answer questions with existing FAQ
- Question statuses:
- Needs information
- Question whiteboards
- Search previous questions/answers
- Filter for status and language:
- Order results by relevancy, status, age
- Suggestions of previous answers that may help you, when you ask a question
- Different response types:
- Add Answer
- Add Information Request
- Just a Comment
- View the history of a question
- When asking a new question, Launchpad suggests answers drawn from the project's question/answer history
Blueprint tracks chunks of work and the people who are involved in seeing that work done.
Blueprint in Launchpad
- Status tracking:
- Pending approval
- Not started
- Needs infrastructure
- Slow progress
- Good progress
- Beta available
- Needs code review
- Low through to Essential
- Is it official?
- Status whiteboard
- People: approver, drafter, assignee
- Mark someone's participation as essential
- Link to external page (e.g. wiki)
- Related branches
- Related bugs
- Propose for sprints
- Request feedback
- Doesn't send any email
- Dependency chart
- Subscribe yourself or someone else
- Supercede another blueprint
Launchpad's bug tracker is designed for sharing bug reports, statuses, patches and comments across project boundaries. It even interacts with external bug trackers, such as Bugzilla and Trac.
There's also the standard things that we've come to expect in a bug tracker: web, email and API interfaces, links between bugs and fixes, team-based delegation and more.
- Report a bug
- Comment on a bug
- Hide middle rump of comments when there are more than 80
- Bug importance
- Bug heat
- Bug tags
- Official bug tags
- Assign a bug
- Activity log
- Multiple bug contexts (bug tasks)
- Bug watches
- Bug status translation from external status to relevant LP status
- Trac plugin
- Bugzilla support, including native and via a plugin
- Shared comment histories
- Bug watches
- Individual bugs
- Subscribe yourself
- Subscribe someone else
- Structural subscriptions: i.e. subscribe to all bugs relating to something
- Coming soon: subscription granularity
- Individual bugs
- Bug feeds
- for a bug
- for a project
- for people / teams
- Expiry of incomplete bugs
- Private bugs
- Security bugs
- Bug-branch links
- Convert a bug into a question
- Close bugs automatically based on package uploads
- Link bugs automatically to a bzr branch
- Setting a bug tracker for a project
- Bug supervisor
- Security contact
- Bug reporting guidelines
- Bug report acknowledgement
- Nominating for release
- Targetting to a milestone
- Email interface for filing and editing bugs (including detailed bug headers)
- Import an existing bug history from elsewhere
- Detailed date transition information
- Bug priority
- Bug filing process
- Duplicate bugs
- Affects me too
- Advanced bug search
- Patches view
- Fixed elsewhere
Launchpad Code provides direct hosting and mirroring for Bazaar branches, as well as imports from several other version control systems. It integrates with other parts of Launchpad, such as the bug tracker.
- Branch hosting
- HTTP access
- SFTP access
- bzr+ssh access
- Branch importing
- git -- no support yet for nested trees
- experimental: hg
- suspending, exponential backoff for failing imports, and retrying
- Branch mirroring
- Code directory and branch listings
- distributions / distro series / distro source packages / distro series source package
- projects / project groups
- people / teams
- Project branches
- Package branches
- Branch subscriptions
- emails for new revisions
- email about meta-data changes
- Branch status
- Bug-branch links
- Blueprint-branch links
- Automatically mark as merged
- Merge proposals
- Code reviews
- Email comments and status updates
- Add comments and status changes through incoming email
- Active review lists / personal dashboard
- Diff generation and regeneration following changes
- for branches
- for revisions
- Source Package Recipes
- recipe listings
- building source packages
- links between recipes and builds
- manual build recipe to archive
- daily builds of recipe into archive
- Branch scanner
- Finds the relevant info about a branch and puts it in the LP database
- merge detection: detects if a branch has been merged into trunk and marks any merge proposal as such
- sends off many of the emails mentioned elsewhere in this list
- kicks off the job to update merge propsal diffs
- responsible for many of the tasks listed above
- Server side branch jobs
- reclaiming deleted branch space
- revision email
- branch upgrades
- Bazaar plugin
- lp: directory service
- code reviews
- Loggerhead: branch browsing
- browse revisions
- browse files
- see diffs
- supports private branches via https and OpenID redirect
Cross-application and other features
A personal package archive (PPA)
- Personal package archives
- Private personal package archives
- Owning one
- Subscribing to someone else's
- PPA stats
- PPA dependencies
- Software Center integration
- Build scores
- Upload using FTP or SFTP
- Target different architectures
- Build from branch
- add-apt-repository ppa:xxxxxxx
- Build farm
- Archive management tools
Individuals / Accounts
An individual's profile page
- Login / logout
- Code of Conduct
- GPG keys
- Maps -- currently on hold
- SSH keys
- Contact metadata
- Email addresses
- "Contact this person"
A team's profile page
- Joining a team
- Teams joining teams
- Managing a team
- Membership policies
- Membership expiry
- Mailing lists
- Private teams
- Sprint management
Polls (Motivation: voting for Ubuntu boards & councils)
- Searching for teams
A project's profile page
- Project groups
- File downloads
- Placeholder projects
- Links to Ubuntu packages
NOTE: sinzui says not useful to projects primarily, useful to distro
NOTE: sinzui says not very good.
- License management
- Projects that select "Other/proprietary" license are disabled after two weeks by commercial admin
NOTE: sinzui says "overly generous term"
- Project roles (or are these series roles)
- Owner (aka "Maintainer")
NOTE: sinzui says there's a request to record their contact details
NOTE: sinzui suggests "steward" as a better term
- Bug contact
- Automatically subscribed to bugs
- Security contact
- Translation group
- Support contact
- Owner (aka "Maintainer")
- Product release finder
- Closing down
NOTE: This includes explaining that the community owns the project
- Commercial subscription
Launchpad Translations provides an easy web interface to translating software. It lets translators care about translating, rather than having to learn about the infrastructure that supports internationalisation.
- Export of changes relative to upstream
- Exports for a project release series or source package (collectively, per language, or as individual translation files).
- Export of gettext (.po) format and generation of MO files, as well as a custom gettext-based XPI compatibility format. Import of gettext as well as Mozilla XPI.
- Full-featured gettext support in the GNU, Gnome, and KDE dialects: plural forms, message contexts, source references, comments, and flags.
- Manual .pot uploads
- Continuous template (.pot) and translation file (.po) imports from specified Bazaar branches
- Continuous translation file (.po) exports to a Bazaar branch
- Automatic suggestions from other projects and packages
- Automatic suggestions from other languages
- Translation groups
- Translation teams
- Separate permissions for the "translate" and "review" activities.
- Configurable permission models.
- Organizational structures for translation and review: translation groups and translation teams.
- Translation UI for the "translate" and "review" activities.
- Translation guidelines
- Plural forms
- Display of template comments
- If you use intltool: commit a change to your code (in Launchpad or some other repository) and see your new translatable strings automatically show up in the Launchpad translation UI.
- Translate in a web UI or, given the right permissions, do them in your favourite editor and upload them. Or commit them to your bzr branch and have them imported from there.
- Let Launchpad commit additional translations made in the web UI back to your bzr branch--or another bzr branch of your choice.
- Automatic translation credits.
- Separate translation of multiple release series, with automatic sharing for identical strings.
- Personal "dashboard" to guide translators and reviewers to where their effort is needed most.
- Translation statistics: untranslated messages, translated messages, messages changed compared to upstream, translated messages that weren't translated upstream.
- Prioritized template listings.
- Show contributions by specific users, and how they are used.
- Filtered translation views for untranslated messages; messages with new suggestions; and messages that have been changed compared to upstream.
- Automatic checking of format strings.
- Detection of conflicts between translations in uploaded files and concurrent changes in the web UI.
- Summarized overviews for your preferred language(s).
- Automatic translation imports from package builds.
- Language packs.