Apache Fleece Proposal

Abstract

Apache Fleece is an implementation of JSR-353 (JavaTM API for JSON Processing).

Proposal

Apache Fleece will consist of a number of modules. Mainly an implementation of JSR-353 but also a set of usefule modules to help with the usage of JSR-353 (surely a mapping module and a jaxrs provider module).

Background

JSon being more and more important JavaEE 7 specified an API to read and create JSon objects/arrays.

Apache Fleece builds on this specification a potential base to do Json at Apache (hopefully it will be integrated with CXF for instance).

Rationale

There is not yet a Json related project at Apache but a lot of projects rely on some specific implementions (jettison, jackson, others...). Proposing a default would be great. The other point is a set of Apache projects related to JavaEE (CXF, TomEE, Geronimo, Axis2...) will need an implementation. Having one built at Apache is a really nice to have.

Initial Goals

The initial goal of the Apache Fleece project is to get a JSR-353 compliant implementation

Current Status

Initial codebase was developped on github but designed to be integrated in Apache.

Meritocracy

Initial community will be mainly composed of already Apache committers so meritocracy is already something well known.

Community

Initial community will be composed of TomEE community for sure, hopefully CXF and potentially all JSon users of Apache.

Initial committers

  • Romain Manni-Bucau (individual, ASF)
  • Jean-Louis Monteiro (individual, ASF)
  • Mark Struberg (individual, ASF member)
  • Gerhard Petracek (individual, ASF member)
  • David Blevins (individual, ASF member)
  • Sagara Gunathunga (ASF)

Alignment

Several Apache project will need a JSR-353 implementation. Having a project which can be shared is better than having a sub project of a particular project. Moreover this project makes sense "alone" since users can integrate it without any other dependencies and use it to read/generate Json in their project so it makes sense to create a dedicated project.

Known Risks

Main risk is to get a not so active project since the specification is not that big.

Documentation

There is no documentation to import today but it will be created using standard ASF tools (ASF CMS mainly).

Initial Source

Initial sources are on this git repository: https://github.com/rmannibucau/json-impl.git

Source and IP Submission Plan

Initial sources are under Apache license v2.

Side note: it was really developed to be integrated in this project (without waiting it to be created).

Required Resources

Mailing Lists

  • fleece-users@incubator.apache.org
  • fleece-dev@incubator.apache.org
  • fleece-commits@incubator.apache.org
  • fleece-private@incubator.apache.org

Version Control

It is proposed that the source code for the Apache Fleece project be hosted in the Apache Git repository, under the following directory:

  • incubator/fleece/

Issue Tracking

The following JIRA project would be required to track issues for the Apache Fleece project:

  • FLEECE

Initial Committers

  • Romain Manni-Bucau
  • Jean-Louis Monteiro
  • Mark Struberg
  • Gerhard Petracek
  • David Blevins

Sponsors

Champion

  • Mark Struberg

Nominated Mentors

  • Justin Mclean
  • Christian Grobmeier

Project Name

While Json is intended to be used as the project’s code name during the incubation process, it is intended that we will solicit suggestions from the greater community for a more suitable name before it becomes a top level project at Apache.

  • No labels