http://apache.org/images/asf_logo_wide.gif

Google is sponsoring the Summer of Code, and The Apache Software Foundation is one of the participating mentor organizations. This page lists all the subjects currently proposed by the Apache Software Foundation.

GSoC 2007 is over, but you can take part in SummerOfCode2008.

Prospective ASF mentors: read this

Mentors must register with the GSoC webapp, see instructions

All ASF projects are invited to submit their ideas to this page. Any Apache member and experienced committers can submit ideas using the template below. We are looking for as many interesting projects as we can come up with. The ASF sponsored around 40 Summer of Code projects last year - this year, we can probably take on even more projects. For more info about mentoring, please read our SummerOfCodeMentor page.

Students: read this

First, review the GSoC wiki page on Advice for Students to make sure you really want to apply to GSoC.

If you (as a student) find an idea you like, we ask that you create a list of deliverables, quantifiable results for the Apache community, a detailed description / design document, an approach, an approximate schedule and something of a background text. In other words - sell yourselves on this Wiki - and link in your proposals with the project idea. Take a look at last year's submissions at SummerOfCode2006 to get an idea of what worked and didn't.

Deadlines

See GSoC Programme Timeline

ASF Subjects for Summer of Code


Subject ID

forrest-rdf

Title

Creating plugins for embedding/producing RDF/XML and microformats in Forrest content objects

ASF Project

Apache Forrest

Keywords

RDF Microformats XML XSLT

Description

Apache Forrest is an XML publishing framework that integrates many XML formats into a unified output format of choice. This project will create a number of plugins to facilitate the embedding and/or creation of RDF/XML microformats in Forrest content objects. We are particularly interested in Description of a Project (DOAP), Friend of a Friend (FOAF), GEO, RDF Calendar, Resume, Review Vocabulary and other community focussed schemas. Each plugin created will provide the necessary stylesheets for embedding/creating the relevant XML documents and will provide adequate examples to show the plugins in action (examples will act as test cases).

Possible Mentors

Ross Gardler Gavin McDonald

Status

Open

Subject ID

batik-udom

Title

Implement the SVG Tiny 1.2 µDOM

ASF Project

Apache Batik

Keywords

XML SVG DOM

Description

Apache Batik is a Java toolkit for processing SVG. It is currently a mostly complete SVG 1.1 Full implementation, and there has been some work towards SVG 1.2 Tiny implementation. This project is to implement the SVG 1.2 Tiny Micro DOM (µDOM), a cut down version of the DOM designed for mobile devices and required for JSR-226.

Possible Mentors

Cameron McCormack (cam at apache dot org)

Status

Open

Subject ID

batik-media

Title

Create a framework for SVG Tiny 1.2 audio and video

ASF Project

Apache Batik

Keywords

XML SVG Video Audio

Description

Apache Batik is a Java toolkit for processing SVG. It is currently a mostly complete SVG 1.1 Full implementation, and there has been some work towards SVG 1.2 Tiny implementation. This project is to implement a framework for processing media in SVG documents. SVG 1.2 Tiny has 'audio' and 'video' elements. The media framework will need to be extensions to the DOM, GVT rendering tree and SMIL timing engine support. (Bonus marks for additionally implementing ASL licensed audio/video codecs! :))

Possible Mentors

Cameron McCormack (cam at apache dot org)

Status

Open

Subject ID

batik-xhtml

Title

Create a framework for foreignObject and integrate an XHTML engine

ASF Project

Apache Batik

Keywords

XML SVG HTML XHTML

Description

Apache Batik is a Java toolkit for processing SVG. It is currently a mostly complete SVG 1.1 Full implementation. One feature of SVG 1.1 currently unimplemented in Batik is the 'foreignObject' element, which is used for incorporating non-SVG content into an SVG document. This is commonly used to include XHTML content. This project would be to implement a framework for 'foreignObject' support and specifically to integrate an XHTML engine (such as Flying Saucer( into Batik for use with 'foreignObject'.

Possible Mentors

Cameron McCormack (cam at apache dot org)

Status

Open

Subject ID

batik-vectoreffects

Title

Implement the vector effects feature from SVG 1.2 Full

ASF Project

Apache Batik

Keywords

XML SVG

Description

Apache Batik is a Java toolkit for processing SVG. It is currently a mostly complete SVG 1.1 Full implementation. One feature of the latest SVG 1.2 Full draft is vector effects, which allows the author to specify complex transformations of the stroking, filling and marker painting of shapes. Vector effects are not comprehensively specified currently, and the feature could change by the time the vector effects module is published again. The W3C SVG Working Group is interested in how difficult the implementation is and whether all of the currently specified features are actually useful. This project would be to implement as much of vector effects as possible--the simple ones (stroke/paint/marker reordering/simple transformations/non-scaling paths) and at least one of the computationally complex effects (setback, union/difference/intersection). You will require knowledge of computational geometry algorithms.

Possible Mentors

Cameron McCormack (cam at apache dot org)

Status

Open

Subject ID

batik-inspector

Title

Design and implement a better document inspector

ASF Project

Apache Batik

Keywords

XML SVG

Description

Apache Batik is a Java toolkit for processing SVG. It is currently a mostly complete SVG 1.1 Full implementation. At the moment, Batik's browser application, Squiggle, has quite rudimentary support for inspecting a loaded document: you can either view the plain XML source, or browse the DOM tree and view the current computed CSS property values on each element. Also, error reporting is quite limited: a message box showing the error and the Java exception that caused it pops up for invalid content or script errors. This project is to implement better error handling and document inspection. Examples of features to implement are a Firefox-like error console, a better DOM tree inspector that allows modification of the document and inspection of SVG specific values, and an animation timeline viewer.

Possible Mentors

Cameron McCormack (cam at apache dot org)

Status

Open

Subject ID

AXIOM-C14N

Title

Canonical XML Implementation on Apache AXIOM

ASF Project

Apache AXIOM

Keywords

C14N, StAX, AXIOM

Description

This project's objective is to implement Canonical XML spefication on Apache AXIOM, which is an XML Infoset compliant object model based on StAX.

Possible Mentors

Ruchith Fernando (ruchithf at apache dot org)

Status

Open

Possible Students

Saliya Ekanayake (saliya at cse dot mrt dot ac dot lk)

Subject ID

MyFaces-CSI

Title

MyFaces Component Set Integration

ASF Project

Apache MyFaces

Keywords

MYFACES, JSF

Description

Better integrate the MyFaces component sets with each other. This might include skinning, layouting, JavaScript or documentation features. Suggestions welcome!

Possible Mentors

Martin Marinschek (mmarinschek at apache dot org)

Status

Open

Possible Students

Leonardo Uribe(lu4242 at gmail dot com , l-uribe at javeriana dot edu dot co) proposal http://wiki.apache.org/general/LeonardoUribe/GSoC2007/proposal]

Subject ID

MyFaces-COMPGEN

Title

MyFaces Component Generator

ASF Project

Apache MyFaces

Keywords

MYFACES, JSF

Description

Enhance the MyFaces component generator to a very performant implementation for state-saving and state-restoring - the less stuff is stored, the better. This should work similar to the Trinidad approach, but so that it can be used with the standard-components as well. Additional refinements to the partial state saving approach are welcome.

Possible Mentors

Thomas Spiegl (thomas dot spiegl at gmail dot com)

Status

Open

Possible Students

Bernhard Huemer

Subject ID

MyFaces-TEMPREND

Title

MyFaces Template Renderer

ASF Project

Apache MyFaces

Keywords

MYFACES, JSF

Description

Component rendering output can only be changed with Java-Code in JSF. This project should find alternative ways to do so, and integrate these ways with existing component libraries. One way could be to implement velocity based rendering in MyFaces. For velocity rendering, special care would need to be taken with regard to performance.

Possible Mentors

Werner Punz (werner dot punz at apache dot org)

Status

Open

Possible Students

none so far

Subject ID

MyFaces-DIALOG

Title

MyFaces Conversation System Extensions

ASF Project

Apache MyFaces

Keywords

MYFACES, JSF

Description

MyFaces has a conversation system integrated with Spring - it would be interesting to dock this conversation system into Apache Shale and Spring Webflow. A nice connection with a single download and configuration would be great.

Possible Mentors

Gerald Muellan (gerald dot muellan at irian dot at)

Status

Open

Possible Students

none so far

Subject ID

jackrabbit-jcr-demo

Title

JCR Demo Application based on Jackrabbit

ASF Project

Apache Jackrabbit

Keywords

Java, JCR

Description

Implement a simple demo web application like a blog or a wiki using JCR and Jackrabbit for managing the underlying content. The purpose of the demo application is to showcase JCR features and to serve as example code. Previous experience with JCR is not required; it would actually be good if you approached the task as an entry-level JCR programmer. More important requirements are some familiarity with Java web application development and ability to write clean and documented code.

Possible Mentors

Jukka Zitting (jukka at apache dot org)

Status

Open

Possible Students

Dominik Wagenknecht (dominik at wagenknecht dot cc) see proposal . Federico Paparoni (federico.paparoni at gmail dot com) see proposal

Subject ID

jackrabbit-jcr-wikipedia

Title

JCR Wikipedia

ASF Project

Apache Jackrabbit

Keywords

Java, JCR

Description

Build a Demo application that implements the basic features of Wikipedia based on JCR and build an importer that can import the existing content from Wikipedia. This particular demo application seems to be ideal because it allows to explain content modelling based on a well-known application. Since there is a lack of content-modelling tutorials the documentation of this project is very likely to be referenced by a very large audience. From a scalability perspective it allows to show that relatively large sets of content can be handeled by jackrabbit. This application deals with both large binaries and fine-grained information and exposes JCR features like versioning, fulltext-search or locking in an excellent fashion.

Possible Mentors

Jukka Zitting (jukka at apache dot org)

Status

Open

Subject ID

tuscany-declarative-das

Title

Expose Data Access Services as a SCA extension

ASF Project

http://incubator.apache.org/tuscany/

Keywords

SOA, DAS, SCA, SCA Extensions

Description

Extend the SCA programming model to expose services that interact with a persistent layer in a declarative fashion hiding the implementation details from the service deployer. It's all about simplicity, allowing a service to be defined without explicitly coding the persistence layer. We already started some discussion and prototype around this subject, and the student could use this as a start point.See more details at : http://lresende.blogspot.com/2007/01/declarative-data-access-services.html

Possible Mentors

Luciano Resende (lresende at apache dot org)

Status

Open

Subject ID

Axis2/C Dynamic Client

Title

a short desciptive title of the subject

ASF Project

Axis2/C

Keywords

WODEN, WSDL, XML-SCHEMA

Description

This project will create a client tool for invoking web services dynamically by giving WSDL and required parameters(ie. operation name, operation parameters). This is a command line tool which require no hand written code to invoke web services. The tool will be written based on Axis2/C Woden and Axis2/C xml schema. Since Axis2/C Woden and Axis2/C Xml Schema are still not matured it will also require from the applicant to improve those code bases as need arises.

Possible Mentors

Damitha Kumarage (damitha at apache dot org), Nandika Jayawardana (nandika at apache dot org

Status

Open

Subject ID

Axis2/C Mail Transport

Title

Adding mail transport support(SMTP/POP3) for Axis2/C

ASF Project

Axis2/C

Keywords

Axis2/C,SMTP,POP3,Mail

Description

This is an attempt to implement mail transport support(SMTP/POP3) for Apache Axis2/C. This will be same as Apace Axis2/Java mail transport support.Currently Axis2/C suports HTTP as the transport.The aim of the project is to allow SOAP system to use the store and forward nature of SMTP without having to host to host publicly-accesible HTTP servers.

Possible Mentors

Dinesh Permalal(dinesh AT apache dot org),Saminda Abeyruwan(saminda AT apache dot org)

Status

Open

Possible Students

Rajika Kumarasiri(rajika at cse dot mrt dot ac dot lk) proposal http://wiki.apache.org/general/RajikaKumarasiri/GSoC2007/proposal

Subject ID

Axis2/C-JSON

Title

JSON Support for Axis2/C

ASF Project

Axis2/C

Keywords

Axis2/C,XML,JSON,JSON to XML mappings

Description

JSON is a text format like XML which can be used to transfer data. JSON support for Axis2C will enable it to consume and populate web services which support JSON. There are various JSON to XML mapping conventions. This project must implement support for these conventions(i.e Badgerfish, Mapped).

Possible Mentors

Nandika Jayawardana (nandika at apache dot org), Dinesh Permalal(dinesh AT apache dot org)

Status

-

Possible Students

Nimesh Saveendra (nimesh at cse dot mrt dot ac dot lk) proposal http://wiki.apache.org/general/NimeshSaveendra/GSOC2007/Proposal

Subject ID

rampartc-saml

Title

SAML support for Rampart/C

ASF Project

Axis2/C

Keywords

SAML, Rampart/C, AXIOM/C

Description

Implement SAML 1.0/1.1/2.0 specifications in C and integrate it to Rampart/C. SAML assertions should be manipulated using AXIOM/C.

Possible Mentors

Nabeel Yoosuf (nabeel at apache dot org), Kaushalye Kapuruge (kaushalye at apache dot org

Status

Open

Subject ID

Apache Woden Serializer

Title

A serialization for Apache Woden object model

ASF Project

Woden, Axis2/Java

Keywords

WODEN, WSDL, Axis2

Description

Woden object model currently doesn't have a serialization logic. This is one of the problems even to the dependent projects like Axis2 as we can not show the WSDL 2.0 document that is encapsulated inside the Woden object model

Possible Mentors

Eran Chinthaka (chinthaka at apache dot org)

Status

Open

Possible Students

Michel Salim

Subject ID

maven-dependency-graphing

Title

Maven Dependency Graphing Tool

ASF Project

maven

Keywords

Java, dependency, graph

Description

Using an existing graphing tool like Prefuse, make a graph of dependencies for any project, with all the dependencies and visualizing as much iformation as possible (transitive dependencies, excluded dependencies, version conflict resolution, ...). Resources: Grafo, Graphview example, Radialgraphview example

Possible Mentors

Carlos Sanchez (carlos at apache dot org)

Status

-

Subject ID

maven-osgi

Title

Maven OSGi integration

ASF Project

maven

Keywords

Java, maven, osgi

Description

Improve OSGi support in Maven, generation of OSGi manifest by default, improve eclipse compiler integration to use bundle manifests, ... Resources: Felix Bundle plugin, Felix Bundle plugin code in Maven sandbox, Maven Eclipse compiler

Possible Mentors

Carlos Sanchez (carlos at apache dot org)

Status

-

Subject ID

cocoon-cforms

Title

Cocoon Forms refactoring

ASF Project

http://cocoon.apache.org

Keywords

Cocoon, Java, Spring

Description

The main task is using Spring configurations to configure Cocoon Forms instead of Avalon configurations. As this task alone wouldn't justify a GSoC project, we would like to get some more refactorings done (e.g. use Dojo throughout Cocoon Forms, make the Javascript usage optional, etc.). Please get in contact with dev[at]cocoon.apache.org to discuss details with us.

Possible Mentors

-

Status

-

Subject ID

cocoon-javaflow

Title

Cocoon Javaflow integration

ASF Project

http://cocoon.apache.org

Keywords

Cocoon, Java, Javaflow

Description

Finish the work on the Cocoon Javaflow block, integrate it with the reloading classloader stuff and make sure that Javaflow continuations are serializeable. Additionally make the continuations manager working with distributed caches. Please get in contact with dev[at]cocoon.apache.org to discuss details with us.

Possible Mentors

-

Status

-

Subject ID

cocoon-expression

Title

Cleanup of expresion language usage in Cocoon

ASF Project

http://cocoon.apache.org

Keywords

Cocoon, Expression language, Object model

Description

In Cocoon several different expression languages are used in the sitemap, in flowscipts and in the form framework. The object model available also differ in these different areas. The task is to refactor Cocoon so that a single expression language and object model is usable everywhere. Please get in contact with dev[at]cocoon.apache.org to discuss details with us.

Possible Mentors

-

Status

-


Subject ID

xerces-stax-stream-reader

Title

Add support for the StAX (JSR-173) cursor API to Xerces-J

ASF Project

Apache Xerces Java

Keywords

Java, JAXP, StAX, XML, Xerces

Description

Work is underway in Xerces on an implementation of JAXP 1.4. The largest technical change in this new edition of JAXP is the addition of StAX (JSR-173) which introduces XML pull parsing APIs to the Java platform. In constrast to push parsing APIs like SAX, StAX gives control back to the application at each step in the parsing process. The goal of this project is to design and implement the cursor-based XMLStreamReader (and filtering support). It should be possible to accomplish this using XNI by building the XMLStreamReader on top of an XMLPullParserConfiguration.

Possible Mentors

Michael Glavassevich (mrglavas at apache dot org)

Status

Accepted proposal. Student: Wei Duan (weidua at gmail dot com)

Subject ID

xerces-xinclude-xpointer-enhancements

Title

Implement a streamable subset of the XPointer xpointer() scheme for XInclude

ASF Project

Apache Xerces Java

Keywords

Java, XML, XInclude, XPointer, XPath, Xerces

Description

Xerces currently supports the XPointer Framework and the XPointer element() scheme. Though this meets the minimum requirements for XInclude it's quite limited in capability compared to the more powerful XPointer xpointer() scheme which allows one to select document fragments using XPath. Xerces' streaming XInclude processor would be greatly improved if it provided support for a streamable subset of this scheme.

Possible Mentors

Michael Glavassevich (mrglavas at apache dot org)

Status

Open

Subject ID

xerces-dom-level-3-load-and-save

Title

Asynchronous LSParser and parseWithContext

ASF Project

Apache Xerces Java

Keywords

Java, JAXP, DOM, XML, Xerces

Description

The goal of this project is to complete the implementation of the DOM Level 3 LSParser. Though Xerces has a functional LSParser, there are a couple parts of the spec which still need to be implemented. This includes an asynchronous version which returns from the parse method immediately and builds the DOM tree on another thread as well as parseWithContext which allows a document fragment to be parsed and attached to an existing DOM.

Possible Mentors

Michael Glavassevich (mrglavas at apache dot org)

Status

Open

Subject ID

xerces-unicode-normalization

Title

Add support for Unicode character normalization and normalization checking

ASF Project

Apache Xerces Java

Keywords

DOM, Java, Unicode, XML, Xerces

Description

Design and implement support for Unicode character normalization and normalization checking to allow applications to produce fully normalized documents and verify that the documents they process are fully normalized. With an XML document which has been verified to be fully normalized an application can perform string comparisons without having to deal with the many possible forms (with the same meaning) allowed by Unicode. These features have been on the TODO list for several releases, but keep being deferred because none of the current Xerces committers are familiar with Unicode normalization forms, so it would be great to get someone with that knowledge (or interested in acquiring it) involved in the project.

Possible Mentors

Michael Glavassevich (mrglavas at apache dot org)

Status

Open


Subject ID

spamassassin-easy-mass-check

Title

Nightly Mass Check for Normal People

ASF Project

SpamAssassin

Keywords

perl, email, corpora, distributed, community

Description

We need a way to make nightly mass check easily accessible to normal users. They need easy to use software to do mass checks and submit results. They must be properly trained on the sorting rules. Our project then needs some way of tracking the level of trust of these growing number of submitters. see http://wiki.apache.org/spamassassin/SocNightlyMassCheck

Possible Mentors

Doc Schneider (maddoc -at- maddoc.net)

Status

-


Subject ID

spamassassin-separate-expiry

Title

Helper process for Bayes expiry

ASF Project

SpamAssassin

Keywords

perl, bayes, spamd, processes

Description

Theo said: 'I also suggested having things like Bayes expiry and such being passed back to the parent who can spawn a helper process to do the work. That way the children processes will be able to accept, process, return the result, notify parent for bayes work, go back to listening. Right now we do: accept, process, do bayes work, return result, go back to listening, which ends up causing timeouts and possibly eats up all processing children.

Possible Mentors

Michael Parker (parkerm -at- pobox.com)

Status

-


Subject ID

spamassassin-arf-plugin

Title

ARF plugin

ASF Project

SpamAssassin

Keywords

arf, plugins, reporting, perl

Description

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=4812 : ARF is a spam-report format for feedback loops for ISPs; there's been some interest in SpamAssassin understanding this and being able to match metadata inside the messages being reported. (This task may be too short for SoC purposes, however.)

Possible Mentors

Status

-


Subject ID

spamassassin-corpus

Title

Maintain a SpamAssassin corpus of messages

ASF Project

SpamAssassin

Keywords

corpora, mail, collection, perl, community

Description

Theo said: 'I'd almost rather we shift this around and make a "SpamAssassin Corpora", have all of us focus on making that the best it can be, and use that for mass-checks, etc.' This could be a good possibility. Contributors can upload their own mail corpora to a central web app where the mass-check occurs. The mail collections could be quickly checked for validity, and tagged based on how much privacy the user wants for their mails (therefore controlling further redistribution of those mails). Related to 'spamassassin-easy-mass-check' above.

Possible Mentors

Doc Schneider (maddoc -at- maddoc.net)

Status

-


Subject ID

spamassassin-better-reload

Title

Better way to reload the spamd configuration

ASF Project

SpamAssassin

Keywords

reload, spamd, sighup, restart, perl

Description

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=4774 : we currently have a very heavyweight configuration-rereading system where the entire process restarts. This is too heavyweight, and can be improved.

Possible Mentors

Michael Parker (parkerm -at- pobox.com)

Status

-


Subject ID

spamassassin-message-test-suite

Title

a message-parser test suite

ASF Project

SpamAssassin

Keywords

testing, testsuite, parsing, mail, perl

Description

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=4559 : Every now and again, we come up against bugs in our message parser (MIME, HTML, headers, base64/qp decoding, etc. etc.) We fix them, but occasionally there's regressions. I envisage it as using a vast collection of message files, something like a mass-check corpus, and a set of tests to ensure the parser sees what it should be seeing.

Possible Mentors

Status

-


Subject ID

spamassassin-improved-chi

Title

Implement 'Improved Chi' in the BAYES rules

ASF Project

SpamAssassin

Keywords

bayes, classifiers, chi, statistics, perl

Description

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=3460 : _Handling Redundancy in Email Token Probabilities_, Gary Robinson. http://www.garyrobinson.net/2004/04/improved_chi.html . Has shown good results, reportedly. Implement in SpamAssassin and benchmark results using 10-fold cross-validation.

Possible Mentors

Status

-


Subject ID

spamassassin-dobly

Title

Benchmark and implement "Dobly" Noise Reduction

ASF Project

SpamAssassin

Keywords

dobly, bayes, classifiers, perl

Description

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=3078 : investigate "Dobly" noise reduction a la http://bnr.nuclearelephant.com/ , in a form that can be incorporated into SpamAssassin. Benchmark results using 10-fold cross-validation.

Possible Mentors

Status

-


Subject ID

spamassassin-secure-user-auth

Title

Secure user authentication in the spamd protocol

ASF Project

SpamAssassin

Keywords

spamd, protocol, tls, perl

Description

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=4550 : a secure method to authenticate users over a spamc/spamd connection.

Possible Mentors

Michael Parker (parkerm -at- pobox.com)

Status

-


Subject ID

spamassassin-distributed-mass-check

Title

Distributed mass-check

ASF Project

SpamAssassin

Keywords

corpora, perl

Description

mass-check currently makes use of a single system to process a number of messages. However, in larger organizations, or for people with multiple machines, it would be nice if multiple machines could all process a single mass-check run, preferably without needing to share the same filesystem, paths, etc. It would also be useful if we ended up with a single large corpus (see the spamassassin-corpus project above), so that multiple people could run the messages through over the Internet.

Possible Mentors

Status

-


Subject ID

spamassassin-persistent-db-conns

Title

Persistent database connections

ASF Project

SpamAssassin - http://SpamAssassin.apache.org/

Keywords

perl, databases, sql

Description

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=2037 : persistent database connections for SpamAssassin's Bayes subsystem. Michael: 'This exists, but is not an ASL friendly license. So a "clean room" implementation might be cool.'

Possible Mentors

Michael Parker (parkerm -at- pobox.com)

Status

-


Subject ID

spamassassin-quarantine-config-ui

Title

Quarantine / user-configuration web UI

ASF Project

SpamAssassin - http://SpamAssassin.apache.org/

Keywords

web, ui, quarantine, user-configuration, cgi, perl

Description

Create a web application for message quarantine or user configuration, as part of the SpamAssassin project.

Possible Mentors

Michael Parker (parkerm -at- pobox.com)

Status

-


Subject ID

spamassassin-pluginize-bayes

Title

Pluginize the Bayes Subsystem

ASF Project

SpamAssassin - http://SpamAssassin.apache.org/

Keywords

bayes, perl

Description

The Bayes subsystem is currently part of the SpamAssassin core engine it would be nice if it was moved to be a plugin so it could a) be removed from the memory footprint when not needed and b) more easily replaced with a different implementation.

Possible Mentors

Michael Parker (parkerm -at- pobox.com)

Status

-


Subject ID

abdera-c

Title

C/C++ implementation of Abdera

ASF Project

Abdera - http://incubator.apache.org/abdera

Keywords

atom, atom publishing protocol, c/c++

Description

Abdera is a high performance, feature-complete implementation of the Atom Syndication Format and Atom Publishing Protocol. The current implementation is limited to Java environments. It would be nice to have a C/C++ port available.

Possible Mentors

James Snell (jasnell@gmail.com)

Status

-


Subject ID

velocity-macro

Title

Improve Velocity Macro capability

ASF Project

Velocity - http://velocity.apache.org

Keywords

macro, include

Description

The Velocity macro capability allows users to create reusable blocks of text and Velocity expressions. There are a number of ways in which this capability can be improved. The most important is to allow users to define macros in a separate file that can either be included with a #parse statement (VELOCITY-362, VELOCITY-277) or via a Java API (VELOCITY-529). Other issues to look at include limiting the maximum recursion depth of macros (VELOCITY-297), allowing macro argument overloading (VELOCITY-510), allowing expressions to be arguments instead of just literals, and some other miscellaneous issues (VELOCITY-62).

Possible Mentors

Will Glass-Husain (wglass@apache.org)

Status

-


Subject ID

velocity-performance

Title

Optimize Velocity memory usage and performance

ASF Project

Velocity - http://velocity.apache.org

Keywords

memory, speed, performance, optimize

Description

When Velocity was first launched, on of its key advantages over JSP was performance. Templates are parsed once then cached, with significant performance gains. (At one point Velocity had 5 times greater performance than JSP, though JSP execution has gotten significantly faster). It's been some time since anyone spent significant time optimizing Velocity for speed or memory usage. There's been recent reports that memory usage has gone up in the recent release (particularly with regard to complex templates and macros). With large amounts of templates, this makes it hard to take advantage of the cache. The task for this project is to profile and optimize Velocity for the high-volume, complex template use-case. We are looking primarily for memory optimizations but also for performance in general. Creative ideas for optimization are welcome.

Possible Mentors

Will Glass-Husain (wglass@apache.org)

Status

-


Subject ID

derby-testandfix

Title

Convert Derby tests to JUnit and fix Derby bugs

ASF Project

Derby - http://db.apache.org/derby/

Keywords

test, bugs, java

Description

Convert Derby tests to JUnit and fix bugs in Derby. Small projects and incremental check-ins mean your code can make an impact right away and you have a wide choice of code areas to focus on. See DerbyTesting for more information on Derby testing and Derby Open code bugs for a list of bugs to choose from.

Possible Mentors

Kathey Marsden (kmarsdenderby@sbcglobal.net

Status

Open

Possible Students

Ravinder Reddy (ravinder dot pandiri at gmail dot com) proposal http://students.iiit.net/~pandiri/proposal.html

Possible Students

Ramin Moazeni (moazeni@usc.edu) proposal http://wiki.apache.org/general/RaminMoazeni/GSOC2007/proposal

Subject ID

log4j-chainsawenhancements

Title

adding functionality and usability improvements to Chainsaw

ASF Project

Log4j

Keywords

java logging analysis gui

Description

Add some often-requested features to Chainsaw. Also improve the VFS-based receiver which can load a text-based log file accessible via SSH, and tail the file in the Chainsaw UI

Possible Mentors

Scott Deboy (sdeboy@apache.org), Paul Smith (psmith@apache.org)

Status

-

Subject ID

fop-logging

Title

Providing user feedback

ASF Project

XML Graphics FOP - http://xmlgraphics.apache.org/fop/

Keywords

java logging

Description

Currently loggers are used for both user feedback (errors in input file, layout issues) and developer debugging. A mechanism needs to be designed for improving user feedback and make it thread safe. That is, feedback messages from two different document processing runs will be delivered separately, and in a different way than debug messages.

Possible Mentors

Vincent Hennebert (vhennebert AT apache DOT org)

Status

-


Subject ID

cxf

Title

CXF Services Framework Enhancements

ASF Project

Apache Incubator CXF

Keywords

Java, JRuby, WSDL, Google analytics, web services, XML, SOAP, integration

Description

Learn about web services and get hands-on experience and the support of an open source community in this project that will focus on key enhancements for the CXF Services Framework. Interested students can select which area they are interested in working on with the support of experienced committers as mentors. Contribute to the Apache Incubator CXF services framework project by working on one or several of the following items: * Integrate Google analytics with web services using CXF * JRuby integration * J2ME version of CXF * WSDL 2.0 support * WS Metadata Exchange/Transfer implementations * CXF performance benchmark * WADL support

Possible Mentors

Dan Kulp dan.kulp AT gmail DOT com , Eoghan Glynn eoghan.glynn AT gmail DOT com, James Mao maomaode aT gmail doT com, Jervis Liu jervisliu AT gmail DOT com

Status

We are eager to have student participants in our project, but we don’t currently have any students assigned to this project. A student participating in this project would have the support of the CXF community.

Subject ID

openjpa-streaming-lobs

Title

Add field-level support for streaming CLOBs and BLOBs to OpenJPA

ASF Project

OpenJPA

Keywords

OpenJPA, JPA, JDBC, CLOB, BLOB

Description

BLOB and CLOB fields can only be mapped in their entirety in OpenJPA. It would be nice to support persistent fields of type java.io.InputStream (for BLOBs) and java.io.Reader (for CLOBs) in entities, mapped superclasses, and embedded types. The first phase of this project entails learning about OpenJPA's field metadata and field mapping internals, creating new mapping support for streaming field types, and, of course, creating test cases and reference documentation for the new feature. Additional follow-on steps include analysis and implementation of this feature on data caching and on large / long-running transactions. See http://issues.apache.org/jira/browse/OPENJPA-130 for more details.

Possible Mentors

Patrick Linskey (pcl AT apache DOT org)

Status

Open

Possible Students

Ignacio Andreu (plunchete AT gmail DOT com)

Project ideas format

To add a new project idea, just copy the following template and fill in the blanks:


Subject ID

project-id

Title

a short desciptive title of the subject

ASF Project

the ASF project(s) tied to this subject

Keywords

keywords on this subject, like language, technology or concept used

Description

a paragraph describing what this subject is all about

Possible Mentors

volunteer mentors for this subject

Status

indicate whether this subject has already been assigned to a participating student

SummerOfCode2007 (last edited 2009-09-20 23:35:55 by localhost)