The Apache Software Foundation
Community > Code
There are a number of useful Apache tools and services available for Apache projects and committers. This is a brief set of pointers or signposts to that information.
Apache Infrastructure Information ¶
The primary portals for Apache Infra questions - how Subversion/Git/Websites, etc. work at the ASF - are pages at apache.org/dev and infra.apache.org.
If you’re a committer, you can patch this very website yourself!
Decision making ¶
Decisions in Apache projects result from:
- action
- consensus in the community
- (if needed) votes within the community
We have, over the years, developed a very simple and effective approach to consensus building and decision making. Projects, and the ASF generally, make the vast majority of decisions using lazy consensus. If the “lazy” approach to consensus building seems unsuitable for a particular decision, we seek to build consensus within the community. Very occasionally, usually for formal reasons relating to legal responsibilities, it is necessary to call a vote.
Full descriptions of each of these approaches are available on various foundation and project sites. However, we’ve provided an initial introduction to decision making here on the community development site.
Project independence ¶
While not all ASF projects practice all aspects of the Apache Way in the same way, there are a number of rules that Apache projects must follow – things like complying with PMC release voting, legal policy, brand policy, using mailing lists, etc., which various sites document.
One of these invariant rules is that PMCs manage projects independently of any commercial interests. The goal is to create an environment in which all participants are equal and thus have an equal opportunity to contribute to and benefit from our software, regardless of motivation or financial objectives. There is more discussion of this principle in our document Project Independence.
Development processes ¶
Each project in Apache is free to define its own development processes as long as it respects our decision-making, legal and independence requirements. However, over the many years that the ASF has existed, our projects have evolved and documented many best practices. In this section we bring together some of the most popular of these practices. Most Apache projects operate in ways that are largely similar to these processes.
- Crediting contributors is a critical part of community building
- ASF Licensing Policy
- Releases
- Releases FAQ
- Release audit is a process each release candidate must go through to ensure it is managing intellectual property (IP) correctly
- RAT/Creadur is a tool to assist this process
- Release management is how the project prepares and publishes its releases
- Handling cryptography in an Apache Release
- Source Headers and NOTICE Files
- Distribution best practices
- ASF Developer section sitemap
Assisting with project management and marketing ¶
There are many visible contributions of value in an Apache projects (documentation, testing, coding user support, design etc.), but there are also plenty of “back office” tasks that are necessary to maintain a healthy project. This section describes some of the activities that you can help with. In most cases you will need to be a committer to carry out these activities, although non-committers can often act in supporting roles.
- Write informational blogs
- Assessing and approving new committers
- Board Reports
- Apache Project Branding/Trademark Resources
Speaking about Apache projects at events ¶
We encourage all of our committers to speak about Apache projects and technologies, and generally to help to grow and enhance our community.
Other Resources ¶
There is no shortage of useful resources for committers at Apache. Here are a few you might want to take a look at: