Eclipse projects are required to maintain a log of intellectual property (IP) contributions (an IP Log). This log keeps track of the third-party libraries that are directly referenced and/or distributed by the project, IP contributions made to the project by non-committers, the list of committers, and more. Fortunately, the IP Log for a project can normally be automatically generated entirely from the various databases maintained by the Eclipse Foundation.
But with everything else going on in the world, remembering to mark a contribution as “iplog+” can be a challenge and is oftentimes forgotten. This leaves your IP log inconsistent (at least for a time) and requires that you do a lot of work prior to your next release (an Eclipse project’s IP Log must be submitted for review prior to a release review).
The Contribution Review Tool–which is available only to Eclipse committers–mines the data contained in Bugzilla and identifies bugs and attachments that might contain contributions that may need to be marked iplog+. My “might” and “may” in that last sentence underscores the need for manual intervention: automated processes can do a fine job of narrowing the field, but I haven’t yet sorted out a way for a tool to automatically determine if a patch has been committed. There may be some opportunity here for natural language parsing of bug comments, but I’m not sure that I have the time and resources required to make that happen (though, I suppose that I could minimally look for comments containing the word “applied” as in “patch applied’). Regardless, the Contribution Review Tool does a pretty good job of making suggestions for how you can improve your IP Log. I use it when I’m reviewing IP Logs before passing them on to the IP Team for their review.
Committers: take a look at what the tool has to say before you submit your log…
FWIW, I am also very excited by the prospect of mining this information directly from Git. It’s on my list. In the meantime, we’re bridging the old with the new.