| <!-- |
| This document is provided as a template along with some guidance for creating |
| your project proposal. This is just a template. Feel free to change it as |
| you see fit (add sections, remove section). We feel, however, that the |
| suggestions represented in this document represent the reasonable minimum |
| amount of information to move forward. |
| |
| Please keep the formatting in this document simple. Please do not edit |
| this document in Microsoft Word as it adds huge piles of markup that make |
| it difficult to restyle. |
| |
| More information is available here: |
| |
| http://wiki.eclipse.org/Development_Resources/HOWTO/Pre-Proposal_Phase |
| |
| Direct any questions about this template to emo@eclipse.org |
| --> |
| |
| <html> |
| <head> |
| <title>Woolsey Project Creation</title> |
| |
| </head> |
| |
| <body> |
| <h1>Woolsey Project Creation</h1> |
| |
| <p>March 9, 2010</p> |
| |
| <p>The Woolsey Project Creation Review will complete on March 17, 2010. Please pose |
| questions about this project and the creation review on the |
| <a href="http://www.eclipse.org/forums/eclipse.woolsey">Woolsey Project</a> Forum.</p> |
| |
| <h2>Background</h2> |
| |
| <!-- |
| Optionally provide the background that has lead you to creating this project. |
| --> |
| |
| <p>As part of the Eclipse Development Process, projects are required |
| to maintain a log that details their intellectual property |
| contributions. This log must include all third-party code that is either |
| distributed or leveraged by the project, identities of the committers |
| who regularly contribute, and the identities of other contributors along |
| with their contributions. The log should further indicate the licenses |
| in use by the project and other information relevant to provenance of |
| the code maintained and distributed by the project. Projects are |
| required to submit their log for review by the Eclipse IP team at |
| key points in their life-cycle, including moves, releases, and |
| graduation.</p> |
| |
| <p>Much of the content of the logs can be generated using |
| information that is available through the various databases maintained |
| by the Eclipse Foundation. The current tool, an automated IP Log |
| generator known as the IP Log Tool, uses information from these |
| databases. This current generation of tool has limited |
| flexibility.</p> |
| |
| <h2>Scope</h2> |
| |
| <!-- |
| All projects must have a well-defined scope. Describe, concisely, what |
| is in-scope and (optionally) what is out-of-scope. An Eclipse project |
| cannot have an open-ended scope. |
| --> |
| |
| <p>It is the purpose of this project to provide tools to assist |
| committers with the management of intellectual property related to their |
| project. This includes tools to assist with the generation and |
| maintenance of IP Logs, the ability to submit logs to the Eclipse |
| Foundation IP team for review, and the ability to compare logs against |
| project distributions (to ensure that an IP Log reflects the contents of |
| a project's downloads, p2 repositories, Maven repositories and other |
| similar distribution mechanisms). As part of this project, we further |
| intend to explore enabling the user to specify mappings between |
| third-party contributions noted in the logs (contribution |
| questionnaires) and the library files distributed by the project. |
| Other matters related to IP management by Eclipse projects may be |
| considered by the project.</p> |
| |
| <p>The IP Log Tool uses an XML-based file format to store the log |
| information. This XML format is defined by an XML Schema (XSD) |
| maintained by the Eclipse Foundation [<a href="#iplog_xsd">1</a>]. |
| Maintenance of this schema is not within the scope of this project (and |
| is therefore not, strictly speaking, an API of this project). The |
| project will, however, maintain compatibility with this schema. The |
| ability to read older versions of the schema (as it matures) will remain |
| in-scope; the ability to write older versions is out of scope.</p> |
| |
| <p>Web services used by the project are not strictly owned by the |
| project and are therefore out of scope.</p> |
| |
| <h2>Description</h2> |
| |
| <!-- |
| Describe the project here. Be concise, but provide enough information that |
| somebody who doesn't already know very much about your project idea or domain |
| has at least a fighting chance of understanding its purpose. |
| --> |
| |
| <p>The new generation of IP Log Tool provides much more flexibility |
| than the current generation by leveraging the Eclipse platform and |
| several Eclipse technologies. Specifically, the new IP Log Tool is an |
| Eclipse-based application that uses EMF technology (including EMF |
| Compare) that pulls data from Eclipse Foundation databases via RESTful |
| web services. All editing of the log is done within an Eclipse IDE (or, |
| potentially, an RCP application) and stored in the file system. The log |
| maintainer can choose where and how to store the XML-based log file. The |
| EMF tooling provides a very flexible editor that allows for complete |
| customisation. The use of EMF Compare allows for easy comparison between |
| a customised log and the information stored in Eclipse Foundation |
| databases (it further allows for consolidation of those changes).</p> |
| |
| <p>The IP Log Tool is primarily a consumer of Eclipse Technology and |
| as such, we do not currently anticipate that we will be producing many |
| APIs. Having said that, the project will take advantage of any |
| opportunities to make the tool extensible.</p> |
| |
| <p>In addition to being a useful tool for Eclipse committers, this |
| project also serves as a show case for Eclipse technology.</p> |
| |
| <h3>More Detail and an Example</h3> |
| |
| <p>The first thing you see when you use the tool is the wizard. The |
| wizard can populate a new IP Log with information gathered from the |
| various Eclipse Foundation databases. As you can see from the |
| screenshot, the user is presented with a hierarchical list of all |
| active Eclipse projects.</p> |
| |
| <p><a |
| href="http://dev.eclipse.org/blogs/wayne/files/2009/09/iplog-wizard.png"><img |
| src="http://dev.eclipse.org/blogs/wayne/files/2009/09/iplog-wizard-300x245.png" |
| alt="The IP Log Tool Wizard" width="300" height="245" |
| class="size-medium wp-image-865" /></a></p> |
| |
| <p>Here, the <a href="http://www.eclipse.org/ercp">eRCP</a> project |
| from the <a href="http://www.eclipse.org/rt">Eclipse RT</a> top-level |
| project has been selected. When the user clicks "Finish", the wizard |
| makes a call out to a web service running at the Eclipse Foundation to |
| gather all the necessary information. The results, which are saved in a |
| file in the workspace, are displayed in the editor.</p> |
| |
| <p><a |
| href="http://dev.eclipse.org/blogs/wayne/files/2009/09/iplog-editor.png"><img |
| src="http://dev.eclipse.org/blogs/wayne/files/2009/09/iplog-editor-300x249.png" |
| alt="IP Log Tool Editor" width="300" height="249" |
| class="size-medium wp-image-866" /></a></p> |
| |
| <p>This editor has been generated using <a |
| href="http://www.eclipse.org/emf">EMF</a>. With almost no work, the |
| editor is completely functional (with help from the <em>Properties</em> |
| view). We envision eventually having a page for each part of the IP Log |
| (committers, third-party contributions, contributors and their |
| contributions, etc.).</p> |
| |
| <p>One of the bigger challenges of maintaining an IP Log is keeping |
| it up to date. EMF Compare provides the ability to compare what is |
| captured in the log against the information found in the Eclipse |
| databases, and selectively update the log with those changes (we are |
| able to just reuse the same web service that was used to do the initial |
| population of the log). Here's what the compare editor looks like after |
| a few changes are made to the initial log:</p> |
| |
| <p><a |
| href="http://dev.eclipse.org/blogs/wayne/files/2009/09/iplog-compare.png"><img |
| src="http://dev.eclipse.org/blogs/wayne/files/2009/09/iplog-compare-300x204.png" |
| alt="IP Log Tool Compare" width="300" height="204" |
| class="size-medium wp-image-867" /></a></p> |
| |
| <p>Right now the compare and update works directly out of the |
| editor. Eventually, you'll be able to do the compare without even |
| opening the log. Note the "Copy current change from right to left" icon, |
| <a |
| href="http://dev.eclipse.org/blogs/wayne/files/2009/09/right-to-left.png"><img |
| src="http://dev.eclipse.org/blogs/wayne/files/2009/09/right-to-left.png" |
| alt="" width="19" height="20" class="alignnone size-full wp-image-873" /></a>, |
| above the "Eclipse Foundation Databases" panel that users can employ to |
| make updates to their log. The functionality that permits movement from |
| left to right has been disabled: at least for now, Eclipse Foundation |
| Databases cannot be updated using this tool.</p> |
| |
| <h2>Target Audience</h2> |
| <p>The target audience for this project is Eclipse Committers. While there is |
| likely some value in the project as an example of the use of Eclipse Technology, |
| it is primarily intended as a tool to assist Eclipse Committers. As such, we do |
| not anticipate much interest from user or adopter communities. Further, while we |
| will openly welcome contributions, we do not anticipate any great flood of diversity |
| into the project. </p> |
| |
| <h2>Initial Contribution</h2> |
| |
| <!-- |
| Describe any existing code that will be contributed to the project. |
| --> |
| |
| <p>The current implementation of the IP Log Tool, which will serve |
| as the initial contribution, supports one-way retrieval of information |
| from Eclipse Foundation Servers. Specifically, it does not send any data |
| to the Eclipse Foundation. Since the current implementation only pulls |
| data, there is currently no authentication and authorisation strategy in |
| place. As the project develops, such strategy may be required.</p> |
| |
| <p>The initial contribution was completed entirely by Wayne Beaton, |
| an employee of the Eclipse Foundation. Copyright is assigned to the |
| Eclipse Foundation, and the work is all distributed under the Eclipse |
| Public License. Some parts of the code have been generated using EMF.</p> |
| |
| <h2>Legal Issues</h2> |
| |
| <!-- |
| Please describe any potential legal issues in this section. Does somebody else |
| own the trademark to the project name? Is there some issue that prevents you |
| from licensing the project under the Eclipse Public License? Are parts of the |
| code available under some other license? Are there any LGPL/GPL bits that you |
| absolutely require? |
| --> |
| |
| <p>We are unaware of any legal issues at this time.</p> |
| |
| <h2>Committers</h2> |
| |
| <!-- |
| List any initial committers that should be provisioned along with the |
| new project. Include affiliation, but do not include email addresses at |
| this point. |
| --> |
| |
| <p>The following individuals are proposed as initial committers to |
| the project:</p> |
| |
| <ul> |
| <li>Wayne Beaton, The Eclipse Foundation (Project Lead)</li> |
| <li>Gabe O'Brien, The Eclipse Foundation</li> |
| </ul> |
| |
| <p>Wayne and Gabe are responsible for having created the current code base and |
| intend to stay on to develop the project. Both Wayne and Gabe are familiar with |
| the Eclipse Development Process and have excellent credentials as committers |
| on current Eclipse projects including the Eclipse Examples Project, Eclipse Packaging |
| Project, and Dash.</p> |
| |
| <h2>Mentors</h2> |
| |
| <!-- |
| New Eclipse projects require a minimum of two mentors from the Architecture |
| Council. You need to identify two mentors before the project is created. The |
| proposal can be posted before this section is filled in (it's a little easier |
| to find a mentor when the proposal itself is public). |
| --> |
| |
| <p>The following Architecture Council members will mentor this |
| project:</p> |
| |
| <ul> |
| <li>Wayne Beaton, The Eclipse Foundation</li> |
| <li>Chris Aniszczyk, EclipseSource</li> |
| </ul> |
| |
| <h2>Interested Parties</h2> |
| |
| <!-- |
| Provide a list of individuals, organisations, companies, and other Eclipse |
| projects that are interested in this project. This list will provide some |
| insight into who your project's community will ultimately include. Where |
| possible, include affiliations. Do not include email addresses. |
| --> |
| |
| <p>The following individuals, organisations, companies and projects |
| have expressed interest in this project:</p> |
| |
| <ul> |
| <li>Cédric Brun, Obeo</li> |
| <li>Shawn Pearce, Google</li> |
| </ul> |
| |
| <h2>Project Scheduling</h2> |
| |
| <!-- |
| Describe, in rough terms, what the basic scheduling of the project will |
| be. You might, for example, include an indication of when an initial contribution |
| should be expected, when your first build will be ready, etc. Exact |
| dates are not required. |
| --> |
| |
| <table> |
| <tr> |
| <td>April 2010</td> |
| <td>Project provisioned. Initial contribution sent to IP team for review. Code |
| contributed. Regular Build script created.</td> |
| </tr> |
| <tr> |
| <td>August 2010</td> |
| <td>Initial release (0.1) featuring EMF-generated editors and |
| preview feature that renders XML-based log in HTML (via XSLT) for easy |
| viewing.</td> |
| </tr> |
| <tr> |
| <td>December 2010</td> |
| <td>Second release (0.2) including specialised editors and |
| ability to submit log for IP review directly from workspace.</td> |
| </tr> |
| </table> |
| |
| <hr /> |
| <p>[<a name="iplog_xsd"></a>1] <a |
| href="http://eclipse.org/projects/xml/iplog.xsd">http://eclipse.org/projects/xml/iplog.xsd</a>.</p> |
| <hr /> |
| <p>Copyright © 2010 The Eclipse Foundation. All Rights Reserved</p> |
| </body> |
| </html> |