incubator-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <>
Subject [Incubator Wiki] Update of "HammockProposal" by johndament
Date Fri, 16 Dec 2016 03:00:05 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Incubator Wiki" for change notification.

The "HammockProposal" page has been changed by johndament:

Bring in new proposal

New page:
= Hammock Proposal =

== Abstract ==

Hammock is a CDI based Microservices framework.  It provides basic bootstrapping as well as
a number of CDI extensions focused on the tools typically used in microservices development.

== Proposal ==

The proposal is to create the Hammock Project within the Apache Software Foundation.

== Background ==

Hammock was conceived as an initial prototype from the Resteasy codebase some years back to
prove out CDI integration in a JAX-RS container on top of Netty as a webserver.  Over time,
it grew into a more robust implementation supporting pluggable servlet containers, JAX-RS
implementations.  It has also started to house various CDI extensions that focus on cloud
environments and tooling useful to microservices.

A small developer and user community have formed around the tooling, allowing it to be tried
and tested in various deployment environments.
== Rationale ==

The need for frameworks based around microservices has grown over time.  The need to leverage
various Java EE technologies has allowed projects to leverage these tools without changing
their development methodologies.

== Initial Goals ==

Hammock has just completed its 1.0 release.  Upon migrating to ASF infrastructure, we anticipate
various re-packaging steps - maven coordinates, package name changes.  A website will need
to be created in addition to new features coming into the code base.

== Current Status ==

Hammock has a strong pipeline of features coming in.  It is aligned to the CDI 1.2 API but
will go to CDI 2.0 once available and stabilized.  New users are popping up and features coming
in as those users need them.

=== Meritocracy ===

The Hammock codebase has been Apache v2 licensed since the beginning.  As we start to move
to the ASF, we expect to more formalize development strategies and build out 

=== Community ===

The target community are those interested in CDI but want to slim down their container dependencies.
 The Microprofile community has focused on that pretty heavily and we see interest coming
from there frequently.

=== Core Developers ===

John D. Ament (johndament AT apache DOT org)
Antoine Sabot-Durand (antoinesd AT apache DOT org)
Libor Kramoliš (libor DOT kramolis AT gmail DOT com)
Irimia Dragos (irimia DOT dragos AT gmail DOT com)

=== Alignment ===

Hammock currently leverages the following Apache products:
- Tomcat
- DeltaSpike
- Johnzon
- ActiveMQ Artemis

In addition, there are plans to add integration for OpenWebBeans, Juneau, Kafka in the near

== Known Risks ==

=== Orphaned products ===

Hammock was one of the first six implementations of Microprofile.  It was the first implementation
not backed by a software vendor but instead a true community effort.  Based on the path forward
for both the project and Microprofile, it is not likely to be abandoned any time soon.

=== Inexperience with Open Source ===

Half of the committers are active in other areas of open source.  With time, the remaining
half will gain their footing.

=== Homogenous Developers ===

Hammock was not started within a company.  Instead it came together as a shared vision from
a number of community members.  The developer community behind it do not hail from any single
company, giving the project a leg up in staying diverse.

=== Reliance on Salaried Developers ===

None of the current developers are paid salary to work on or maintain Hammock.

=== Relationships with Other Apache Products ===

Hammock is built from a large number of existing Apache Products.  Full list can be found
in the alignment section.

=== A Excessive Fascination with the Apache Brand ===

The move to the ASF is focused on creating a level playing field and a true community around
the product.  Leveraging the ASF is based on core committer competencies within the ASF (over
Eclipse Foundation or Linux Foundation).

== Documentation ==

All user documentation can be found in the wiki -

== Initial Source ==

All source code from, with the exclusion of micrprofile-samples
are eligible for inclusion.
The logo of Hammock was a paid item.  A license can be requested from the author to transfer
the rights to the logo.

== External Dependencies ==

Hammock Core:
* Apache DeltaSpike
* Apache CXF
* JBoss RestEasy (Apache v2)
* Oracle Jersey (CDDL 1.1)
* JBoss Weld (Apache v2)
* JBoss Undertow (Apache v2)
* Eclipse Jetty (dual licensed under Apache v2 and EPL v1)
* Apache Tomcat
* Apache Johnzon

Hammock Extensions:
Please note, all extension modules are considered optional.
* Codahale Metrics (Apache v2)
* astefanutti's Metrics CDI (Apache v2)
* Sparkjava Framework (Apache v2)
* Hibernate (LGPL v2.1)
* Apache OpenJPA
* EclipseLink (EPL v1)
* HikariCP (Apache v2)
* Flyway (Apache v2)
* Apache ActiveMQ Artemis
* RabbitMQ Java Client (Apache v2 or Mozilla Public License or GPL 2.0, electing Apache v2)

== Required Resources ==

=== Mailing lists ===

* dev@hammock for general development discussion and user interaction
* private@hammock for internal PPMC (and later PMC) discussions
* commits@hammock for all source repository commits

=== Git Repositories ===

The project expects to leverage several git repositories:

* Core Hammock Runtime (Servlet Containers + JAX-RS + Microprofile aligned distributions +
additional core features): git://
* Hammock Extensions (additional extensions to CDI runtime, if not part of core): git://
* Hammock Examples: git://
* Hammock Website: git://

While the ASF currently requires projects to use git hosted at the ASF as their canonical
repository, a move to github as master (or gitbox) would be welcomed once stabilized.

=== Issue Tracking ===

The project presently uses GitHub issues.  A move to JIRA may provide more structure.

=== Other Resources ===

* The project currently builds using Travis and right now there's no reason to change that.
* The project leverages VersionEye for dependency up-to-date checks.
* The project would like to plan to leverage coveralls for test coverage verification.
* The project currently uses Github wiki 

== Initial Committers ==

John D. Ament (johndament AT apache DOT org)
Antoine Sabot-Durand (antoinesd AT apache DOT org)
Libor Kramoliš (libor DOT kramolis AT gmail DOT com)
Irimia Dragos (irimia DOT dragos AT gmail DOT com)

== Affiliations ==

John D. Ament - Sparta Systems
Antoine Sabot-Durand - Red Hat, Inc
Libor Kramoliš - 
Irimia Dragos - ​

== Sponsors ==

=== Champion ===

John D. Ament johndament AT apache DOT org

=== Nominated Mentors ===

 * John D. Ament johndament AT apache DOT org

=== Sponsoring Entity ===

We are requesting the Incubator to sponsor this project. 

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

View raw message