incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Henry Saputra <>
Subject Re: [VOTE] Accept Freemarker into Apache Incubator
Date Fri, 19 Jun 2015 17:48:36 GMT
Still bit disappointed with initial committers but hopefully more
people that had contributed earlier to could add building healthy
Good number of mentors so should help when making releases.

+1 (binding)

- Henry

On Fri, Jun 19, 2015 at 12:15 AM, Jacopo Cappellato <> wrote:
> Following the discussion in the thread [1], I would like to call a VOTE to accept Freemarker
as a new Apache Incubator project.
> The proposal is available on the wiki at [2] and is also attached to this mail.
> The VOTE is open for at least the next 72 hours:
> [ ] +1 accept Freemarker into the Apache Incubator
> [ ] ±0 Abstain
> [ ] -1 because...
> Thank you,
> Jacopo Cappellato
> 1.
> 2.
> ======================================================
> Freemarker Apache Incubator Proposal
> Abstract
> Freemarker is a "template engine", i.e., a generic tool to generate text output based
on templates. Freemarker is implemented in Java as a class library for programmers.
> Freemarker is a mature, widely used template engine. We propose to make Freemarker a
top level project of the Apache Software Foundation, primarily so that it can build a stronger
developer community, which provides more safety, stability and support to the large user base,
and also helps evolving the engine and its integration with other projects (many of which
are Apache projects).
> Proposal
> Freemarker is a "template engine"; a generic tool that generates text output (HTML web
pages, e-mails, configuration files, source code, etc.) based on templates and changing data.
It's not an application for end-users in itself, but a Java library, a component that programmers
can embed into their products.
> Freemarker was originally created for generating HTML Web pages, particularly in servlet-based
applications following the MVC pattern. It’s not bound to servlets or HTML, however.
> The Freemarker Template Language (FTL) is not a full-blown programming language like
PHP. It’s a simple, specialized language (although among template languages it’s quite
flexible). You meant to prepare the data to display in a real programming language, like issue
database queries and do business calculations, and then the template displays that already
prepared data.
> Freemarker 1.x was initially released under the LGPL license. Later, by community consensus,
we have switched over to a BSD-style license. As of Freemarker 2.2pre1 (2003), the original
author, Benjamin Geer, has relinquished the copyright in behalf of Visigoth Software Society,
a nonprofit organization started by Jonathan Revusky. With Freemarker 2.3.21 (2014) the license
has changed to Apache License, Version 2.0, and the owner has changed from Visigoth Software
Society to three of the Freemarker 2.x developers, Attila Szegedi, Daniel Dekany, and Jonathan
Revusky. Apache License, Version 2.0, is the current license.
> Freemarker is a mature, widely used template engine. While it continues to have a large
user base, the active developer community has become rather small at this point, and we think
that the "Apache Way" governance model and being part of the ASF (together with other projects
that are already using Freemarker) would help to bring new life and energy to the project
to better support the maintenance and improvements of the Freemarker codebase. A larger community
may also help to improve tooling (such as IDE plugins) and integration with popular frameworks
(such as Spring MVC, Struts, etc.), which could foster the adoption of Freemarker. Last but
not least, being under the Apache umbrella would put the project into a more trustworthy legal
context, which also helps adoption, particularly among bigger corporate users.
> We believe that Freemarker should become a Top Level Project as opposed to a subproject
because it has a long history and already a large feature set, codebase and documentation
and there is a lot of room for innovation and improvement that would involve more community
management; governance and autonomy to make its own direction and manage its own community
may be important long term factors for the success of the project.
> Background
> A template engine is a template language with the basic infrastructure around it (configuring,
caching, etc.). A template language is a language specialized on generating text based on
changing data. Template languages like Freemarker Template Language are by design much simpler
than general purpose languages, while providing convenient specialized language devices for
tasks that are frequent during text generation.
> Template engines, like Freemarker, play an important role in applications that leverage
the MVC (Model View Controller) pattern; for example, several web applications and web application
framework implement the MVC pattern in the user interface layer: the appearance of a page
can be changed without programmers having to change or recompile code, because the application
logic (for example a Java program or a Groovy script) and page design (for example a Freemarker
template) are separated. Freemarker is used to implement the View (V) component of the MVC
> Freemarker is also used for generating e-mail, configuration files, and pretty much anything
that’s text. The same governing MVC principles apply there too, which helps to split the
problem to more manageable pieces.
> Rationale
> Freemarker is a mature, stable, proven and feature rich template engine.
> While there are multiple alternative template engines for Java, after more than 15 years
of life, Freemarker is still one of the most featureful and most widely used product in the
category of templating engines for the Java platform. Despite its age, Freemarker still has
potential to improve its functionality without breaking out-of-the-box backward compatibility,
like fixing historical design mishaps, adopting proven ideas from template languages of other
platforms, or to innovate with novel solutions to common templating problems.
> Freemarker is integrated in several proprietary and open source products such as Apache
Struts, Apache OFBiz, Apache Camel, Liferay, Alfresco, Magnolia, and new open source frameworks
such as Moqui. Some popular IDEs, including IntelliJ and Eclipse, have plugins for the development
of Freemarker templates.
> With Freemarker joining the ASF, we hope that more developers would be able to join the
effort and help improve and maintain the codebase, build new features and tools that could
foster the long-term future of the product.
> Current Status
> Freemarker is a mature product created and maintained by a small open source community
for more than 15 years.
> Currently Freemarker provides a fully functional implementation licensed under ALv2.
The project home is at and the majority of development is coordinated
via Sourceforge ( and GitHub (
> The project sports detailed documentation and a big ecosystem of projects leveraging
it. In fact, quite a few existing ASF project have various integrations with Freemarker (OFBiz,
Struts, Camel etc.).
> Meritocracy
> Freemarker has been run by a few core project members with a few contributions coming
from a wide community of participants in the project. In the past, core project members have
emerged because of their activity and merits as contributors. The Freemarker community is
open to new ideas and to revisit old ones.
> The committers and contributors that were actively involved in the project will be encouraged
to join the new incubating community.
> We want to expand our developer and user community and run the Freemarker project in
the "Apache Way" clearly signaling not only the licensing, but also the governance choice.
> Users and new contributors will be treated with respect and welcomed; they will earn
merit in the project by providing quality patches and support that move the project forward.
Those with a proven support and quality patch track record will be encouraged to become committers.
Committers that will work for the growth and health of the community will be invited to become
PMC members.
> Community
> There are currently just a few active core team members in the project and a small group
of occasional contributors. The user base is quite large and composed by end users (developers
using Freemarker for their job) and other open source projects.
> Core Developers
> Core developers are used to work in the openly governed communities. The core developers
are not currently affiliated with the ASF.
> Alignment
> The Freemarker product is already licensed under ALv2 and has been created and maintained
by an open source community for more than a decade. Freemarker has been integrated into Apache
OFBiz, Apache Struts, Apache Camel, Apache Tiles and other projects. Becoming part of the
ASF family can strengthen the collaboration with these and other projects.
> Known Risks
> While the Freemarker product is stable and very widely used, in the recent years the
active core developer community practically has shrunk to one person (Daniel Dekany). The
core group should grow by attracting new contributors in order to ensure continued maintenance
in the future, and to win resources that helps Freemarker to evolve faster next to the maintenance
> In fact, if Freemarker will be accepted in the Incubator, the main goal during the incubation
phase will be attracting new contributors and growing the community with an "Apache Way" governance
> Orphaned products
> The Freemarker project is backed up by an open source community that has created and
maintained the product for more than 15 years.
> Inexperience with Open Source
> The proposers are experienced open source developers. Freemarker to date has been developed
as an open source project.
> Homogeneous Developers
> The Freemarker community is not backed up by any corporation and is diverse in terms
of geography and backgrounds of developers.
> Reliance on Salaried Developers
> The Freemarker contributors are volunteers that are not paid for their contributions
to the project.
> Relationships with Other Apache Products
> Freemarker is an independent product but there are some relationships with other Apache
products. Freemarker currently uses some Apache products, mostly in its build process (for
example Apache Ant, Apache Ivy, Apache Xalan). Freemarker has been integrated into other Apache
products such as Apache OFBiz, Apache Struts, Apache Camel, Apache Tiles. Becoming part of
the ASF family could strengthen the collaboration with these and other projects. Apache Velocity
is similar in purpose to Freemarker and both address similar needs for a template language
in text generating applications. However Freemarker and Apache Velocity have a very different
philosophy, design and implementation and there is a sufficient user base and history for
both projects to justify their independent existence.
> An Excessive Fascination with the Apache Brand
> While we intend to leverage the Apache ‘branding’ when talking to other projects
as testament of our project’s ‘neutrality’, we have no plans for making use of Apache
brand in press releases nor posting billboards advertising acceptance of Freemarker into Apache
> Documentation
> A mature project website is available at In the website a complete manual
is available:
> Initial Source
> Initial source is available on GitHub under the ALv2:
>         • The template engine itself
>         • Generates the Web site
>         • Transforms an XDocBook subset to HTML;
used for the Freemarker Manual. (Also for the Web site in the future.)
> Source and Intellectual Property Submission Plan
> We know of no legal encumberments in the way of transfer of source to Apache. The copyright
holders are the three main contributors in the history of the project, of which one is the
current maintainer and main actor in this incubation process. The other two have been contacted
to sign the Software License Agreement.
> External Dependencies
> The dependencies all have Apache compatible licenses.
> Required Resources
> Mailing lists
>         • (moderated subscriptions)
>         •
>         • (commits, CI reports)
> Git Repository
>         • the template
engine itself
>         • generates
the Web site
>         •
transforms an XDocBook subset to HTML; used for the Freemarker Manual (also for the Web site
in the future).
> Issue Tracking
> JIRA Freemarker (FREEMARKER)
> Initial Committers
>         • Dániel Dékány, ddekany at
>         • Evangelia Dendramis, evangeliad at
> Affiliations
>         • Independent: Dániel Dékány
>         • Independent: Evangelia Dendramis
> Sponsors
> Champion
> Jacopo Cappellato
> Nominated Mentors
>         • David E. Jones - Apache Member
>         • Jacopo Cappellato - Apache Member
>         • Jean-Frederic Clere - Incubator PMC
>         • Ralph Goers - Incubator PMC
>         • Sergio Fernández - Incubator PMC
> Sponsoring Entity
> We would like to propose Apache Incubator to sponsor this project.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message