PROPOSAL: Admit Allura to the Apache Incubator

= Abstract

Allura is a modular and extensible free/open source software platform for 
software development. You can read more about Allura’s feature set in the 
Allura wiki at https://sourceforge.net/p/allura/wiki/Features/

= Proposal

Allura is an open source implementation of a software "forge", a suite of web 
applications that manages source code repositories, bug reports, discussions, 
mailing lists, wiki pages, blogs and more for any number of individual projects 
as well as for collections of projects.

SourceForge.net is running an instance of Allura, and Allura itself is a 
project managed there: http://sf.net/p/allura/. Additionally, 
http://software.dlr.de/ is using Allura.

The name Allura itself has two meanings. It’s Sardinian slang for “And then …” 
It’s also the name of Princess Allura, from Voltron. Stories vary, as with any 
good project name.

Allura has been designed to be the code and project hosting platform for 
SourceForge, the largest place for Open Source software tools and applications: 
home to over 3 million users, hosting a catalog of over 300,000 distinct 
projects and serving over 40 million unique visitors per month and over 15 
million downloads per week. Allura was designed to be scalable, delivering only 
what projects need, and our aim is to collaborate with ASF to get the wider 
contributions and make it the richest all-in-one solution to design, write, 
debug and promote individual projects as well as collections of projects.

= Background

Since the late 1990’s, SourceForge has provided a place for people to create 
and run Open Source projects. In the last two years, the back-end has been 
completely rewritten, and has been Open Source since the beginning of that 
process. This rewritten code comprises Allura.

Allura is written in Python, and provides a framework within which one can 
select source control (svn, git, mercurial, etc), issue trackers, discussion 
forums, and various other tools associated with the software development 
process.

SourceForge.net itself is running on an instance of Allura.

= Rationale

Software development projects can be complicated beasts. By providing all of 
the necessary tools, and offering a choice of tools in most categories, Allura 
promotes best practice in software development. This product can be used either 
inside a company - as some are already doing at their own premise, such as 
http://software.dlr.de/ - or as an open forge like SourceForge, to encourage 
software projects to be done right.

As Apache’s mission is to produce software for the public good, the Allura 
project fits right in by enabling others to also produce software using good 
development practices.

We also believe strongly in giving project communities as much control over 
their destiny as possible, even if this means enabling them to take their 
project elsewhere. Allura is built to give projects complete control over their 
data, and Allura itself being Open Source contributes to this by giving them 
input into the hosting environment as well. Having Allura within Apache, and 
outside of direct SourceForge control, will give our development communities 
even more control of their projects.

= Current Status

Allura has been developed under the Apache Software License from the beginning.

= Meritocracy

We plan to do everything possible to encourage an environment which will 
support a meritocracy. At the moment all committers are either SourceForge 
employees or former SourceForge employees. We are already working with some 
universities to help students to build their career path collaborating with our 
open source project.

= Community

Allura has been developed in the open since its inception, and has a community 
of developers outside of the company that actively watch development, and 
submit tickets and patches. We are interested in building that community more, 
and adding more developers from outside of our organization.

SourceForge has a long history of helping Open Source projects build their 
communities, and strongly believes in the value of the community, even over the 
value of the code itself. We look forward to diversification of our community, 
and the vibrancy this will grant to the code.

Additionally, Allura supports the concept of “neighborhoods”, which allow for 
grouping of related projects into shared project management, which may be 
helpful with related projects within the ASF, were projects interested in 
adopting Allura as their development platform.

= Alignment

Allura is about software development, and has grown out of a community which is 
about open software development. The love for Open Source in general, and the 
Apache governance model in particular, is deep seated in all of the folks 
currently on the Allura team.

While Allura itself enables any development methodology, the core Allura team 
is very much believers in the Apache Way.

= Known Risks

The existing Allura development team has the SourceForge website firmly in mind 
when developing. This means supporting our project developer communities and 
addressing their developer experience.

We have a deep personal interest in seeing this project succeed, and, thus, our 
company be successful. This may may result in different priorities from members 
of the community that come from outside of SourceForge.

However, we firmly believe that it’s exactly that diversification of the 
developer community that will make the product more successful.

= Orphaned products

As SourceForge’s entire business is based around this product, there’s no risk 
that the project development will be abandoned, regardless of the outcome of 
this proposal or a subsequent incubation. We’re in it for the long haul. 
Additionally, several other businesses are based around older versions of this 
product, and have expressed interest in ongoing participation.
Inexperience with Open Source

The initial developers of this project have a long association with Open 
Source. SourceForge itself has been a hub of Open Source development, so to 
speak, for more than ten years, and many of the initial developers on this 
project have been involved with Open Source for as long or longer.

= Homogeneous Developers

The initial set of active developers are, indeed, almost all from the same 
company. Although there are some names on the initial committer list from 
outside the company, most of these are former employees who are not very active 
any more.

We are hoping to expand that group of developers, in order to have wider input 
from our user community to improve the developer experience for those using 
Allura as a development infrastructure.

= Reliance on Salaried Developers

At present, almost all development on Allura is done on salaried time. It is 
understood that expanding the developer community to the point where this is 
not the case, is a goal of incubation.
Relationships with Other Apache Products

It is hoped that some Apache projects might adopt Allura as their development 
infrastructure. We don’t know how this might come about, but would love to see 
that outcome. Indeed, overcoming objections to using Allura as a development 
infrastructure will no doubt lead to enormous product improvements.

With regard to direct connections to Apache projects, Allura itself uses Apache 
Solr for search functionality, and the source control component supports Apache 
Subversion, in addition to other revision control technologies.

= An Excessive Fascination with the Apache Brand

We are indeed Apache fans. We look to Apache as a model of good community 
governance methodologies, and recommend these methodologies to projects hosted 
at SourceForge all the time. If this constitutes an excessive fascination with 
Apache, then we’re guilty as charged.

However, we’re interested in joining the ASF family, not for the brand 
recognition, but in order to benefit from this community governance model. We 
already have a recognized brand, and we already have infrastructure. We’re 
interested in learning, as well as teaching, about how Open Source projects are 
run, and doing it better, as well as the obvious benefits to our project 
community and the product itself.

= Initial Source

The Allura source code has been developed in the open, in Git, on the 
SourceForge infrastructure, from day one. It has been under the Apache License, 
2.0, also from day one. The entire code history can be seen here:

https://sourceforge.net/p/allura/git/
 
The project began in July of 2010.

= Source and Intellectual Property Submission Plan


Geeknet owns copyright and other intellectual property rights on what its 
employees produce. The patches that we've received so far have had a 
"Signed-off-by" flag, to indicate licensing under AL2 See 
https://sourceforge.net/p/allura/wiki/Contributing%20Code/ for details.

= External Dependencies

External dependencies include MongoDB, Apache Solr, and numerous Python 
packages.

= Cryptography

None in the codebase, only in 3rd-party dependencies

= Required Resources

Allura is a development forge for Open Source software. It is currently 
self-hosted on the SourceForge.net instance, and we strongly believe that 
eating our own dogfood is central to the success of our project. As such, 
several of the items in this section request that we remain self-hosted, 
presumably on a VM running Allura.

= Mailing lists

In addition to the self-hosted web-based discussion forums, Allura requires the 
following mailing lists:

allura-private
allura-dev
allura-users
allura-commits

= Subversion Directory

Input needed from Incubator PMC - Allura is currently developed in Git, and 
we’d prefer to keep it that way. We also desire to have our code be self-hosted 
- ie, to develop Allura within the Allura tool.

= Issue Tracking

Input needed from Incubator PMC. The Allura product includes a ticket tracker, 
and we would prefer to use all of our own tools, as much as possible, in the 
development of our product.

= Initial Committers

This is the initial committer list on the Allura project.  

kad...@geek.net                 Kyle Adams
tvansteenbu...@geek.net    Tim Van Steenburgh
jar...@gmail.com                 Yaroslav Luzin
patr...@geek.net                   Patrick Lenz
wwit...@geek.net                  Wayne Witzel III
john...@geek.net                 Cory Johns
brond...@apache.org           Dave Brondsema
r...@arborian.com                 Rick Copeland
jste...@geek.net                    Jenny Steele
sscrog...@geek.net               Sonny Scroggin
galopp...@apache.org             Roberto Galoppini
Sponsors

= Champions

Rich Bowen - rbo...@apache.org
Dave Brondsema - brond...@apache.org


= Nominated Mentors

Rich Bowen - rbo...@apache.org
Ross Gardler- rgard...@apache.org
Greg Stein - gst...@apache.org
Jim Jagielski - j...@apache.org

= Sponsoring Entity

Incubator PMC

Reply via email to