5246
Comment: converted to 1.6 markup
|
5376
|
Deletions are marked like this. | Additions are marked like this. |
Line 14: | Line 14: |
* Michael Vogt is currently the main person doing uploads and work. | * Michael Vogt is currently the main person doing uploads. * David Kalnischkies is the main person that does the coding working. * Julian Andres Klode works on a experimental resolver interface |
Apt Team
We maintain apt and python-apt.
Infrastructure
Alioth Project: http://alioth.debian.org/projects/apt
- Source code:
bzr branch nosmart+http://bzr.debian.org/apt/apt/debian-sid (anonymous)
bzr checkout sftp://bzr.debian.org/apt/apt/debian-sid (team members)
- Mailinglist
- Irc:
Current Team Roles
- Michael Vogt is currently the main person doing uploads.
- David Kalnischkies is the main person that does the coding working.
- Julian Andres Klode works on a experimental resolver interface
- Otavio Salvador helps from time to time, either merging patches or doing some uploads.
- Daniel Burrows contributed in some bugs, as he's obviously directly interested in APT, being the maintainer of aptitude.
- Christian Perrier is doing l10n maintenance.
How to use bzr
The apt team is using bazaar (bzr) as version control system. Bazaar is a distributed version control system that is easy to use and still powerful.
- For team members it can be used almost like svn: bzr checkout / bzr diff / bzr commit
- For anonymous access: bzr get / bzr pull / bzr push
A good (and short) tutorial http://doc.bazaar-vcs.org/latest/en/mini-tutorial/index.html
Branches used
Bazaar makes branching and merging very easy. Most development is done in feature branches or user branches that are then merged into the ""debian-sid"" or ""debian-experimental"" branch.
Help needed
- Bug triage:
How to contribute
Everybody can help APT. You are welcome to contribute on bug traging, coding, fixing bugs and merging patches, translating and so on.
Creating a local branch
Before you start, we suggest you to get a working copy of either debian-sid or debian-experimental development branch.
APT uses the bazaar DVCS:
aptitude install bzr
These commands will create a directory named respectively debian-sid and debian-experimental:
bzr branch nosmart+http://bzr.debian.org/apt/apt/debian-sid bzr branch nosmart+http://bzr.debian.org/apt/apt/debian-experimental
Now you have two local branches tracking the remote ones.
Inside your local branch, you can merge the changes from the remote branch into your branch with the following command, to keep your working copy up-to-date:
bzr pull
Move to debian-experimental and search for an UNRELEASED version. If there isn't any, create it with dch.
Preparing and triaging
Now let's look at some bugs about apt and search for the ones tagged patch. This tag means the bug has already a patch that fixes the bug and should be reviewed. You can filter the search further.
At the beginning, it's better you start gaining experience with both the code and the documentation by looking at some minor and normal bugs. The following steps are suggested to get the triage done the best way for one bug:
- Read the whole information about the bug (and merged bugs), including comments until the end
- Read the provided patches (including merged bugs)
Thank the reporter and the patcher then tune tags and severity when needed by using the control server. Please ask the maintainer when you are in doubt.
Apply the patches you think are worth to be included in the latest TIP of bzr (i.e. debian-experimental). If it doesn't get applied correctly, modify the sources accordingly to the patches and to the discussion and please attach an updated patch to the bug.
Save in a personal TODO all the bugs you triage and the ones you are in doubt to contact the maintainer at once.
Committing the changes
For each patch you apply or different things you do (also small changes or typos), commit them in your local branch and create a debian/changelog entry about the changes in a compact form:
bzr commit -m "Message"
Usually using the changelog entry as the message is enough. If you want to delete the last commit because you made a mistake:
bzr uncommit
Remember to daily bzr pull to merge remote changes into your local branch.
Publishing your branch
After you got a good set of commits and everything works correctly, you can publish your branch over internet, then you can propose a merge by contacting the mailing list with your repository URL:
bzr push URL
The repository must be sftp capable.
For example, you can create an account on launchpad which offers free service for bzr hosting:
- Tune your account
- Setup your own SSH key to access the remote branch
Register a new hosted branch under the apt project with the name debian-experimental having the experimental status
Access your branch web page and you can see the URL to use for bzr push.
NB: notice that the lp: protocol already includes the sftp capability and it's strictly related to launchpad.