Requesting Commit Rights
Once you have a track record as a maintainer (achieved by all-around good works such as submitting new ports with yourself as a maintainer, submitting bug fixes for existing ports, etc), we encourage you to apply for commit status so that you can easily keep your ports up to date and participate in keeping MacPorts such a strong community. If you feel you are ready for commit rights, please read the relevant documentation that explains the membership application process.
Port Committer Responsibilities
- A commit affects one port
- An exception to the rule above would be several Portfiles making use of some feature which requires an update
- A new feature has been released which obsoletes previous hacks
- A command or option is found to be broken
- Combined updates for similar ports (wine and wine-devel)
- Changing maintainer email address for your ports
- Other, similar reasons
- Make whitespace changes in a separate commit. To keep diffs readable for review whitespace changes should be done in a separate commit without any functional changes.
- New top-level categories (those which are represented by directories directly beneath the repository root) need to be approved prior to adding; secondary categories (the second and later ones listed on the categories Portfile key) can be added when it makes sense (since these really only show under the web interface, and do not necessarily have a filesystem representation)
- Port directory name has to match the name option in the Portfile
- Run
port lint
before committing to be sure not to violate one of the guidelines - Commit messages should make clear what has been changed (see CommitMessages)
- Under most circumstances, do not modify a port belonging to another maintainer; this is to be done via a Trac ticket, a GitHub pull request or by direct communication with the maintainer. Exceptions are:
- When a port is broken (and the update should be just to fix the port, no other updates "while you're there")
- When nomaintainer@macports.org is the maintainer; this really means the port is unowned (feel free to take it over)
- When openmaintainer@macports.org is co-maintainer; this signifies that the primary maintainer has no prior objections to others making minor fixes
- When the maintainer says the update is okay and asks you to commit your update; in this case, be sure to note in the commit message that it was approved by the maintainer
- When a ticket was already filed and you're making use of the maintainer timeout, note this fact in your commit message and add the ticket id for reference.
Who are you?
Add yourself to our list of contributors at MacPortsDevelopers.
Mailing Lists and Change Logs
Notification of changes is either via the macports-changes list or by subscribing to the RSS feeds provided by Trac (see the RSS feeds of the Timeline view and the Git Repositories). Note that you may customize the Timeline prior to subscribing to it, in order to control which types of information you are fed. In addition to getting an RSS feed of general project events, you may also subscribe to changes to some portion of the source tree or to bug reports/tickets.
Checking out repos for committing
See the WorkingWithGit wiki page.
Project Member Addresses
We prefer that those with commit rights use their @macports.org handle when listing themselves as a maintainer. This helps other committers to distinguish maintainers who are committers from those who are not.
Several special maintainer addresses are used to distinguish additional meta-information about ports. Please see SpecialMaintainerAddresses.
Sending from your Project Member Address
In order to send mails from your <handle>@macports.org address, you need to configure your mail client with an additional account. The authentication credentials can be configured with the following steps:
- Ensure your @macports.org email address has been added to your GitHub account and is verified on GitHub: https://github.com/settings/emails
- Go to https://smtpselfservice.macports.org/, log in using GitHub, and set your SMTP password.
- Configure your mail client to send mail from your @macports.org address: https://smtpselfservice.macports.org/settings
If you are interested, the source code for the SMTP self service web app is also available: https://github.com/macports/macports-smtpselfservice