Approximately two months ago we had some students in the university working on plugins for sip-communicator. I had told them at the time that for their projects they could simply clone the sip-communicator repository, commit all code to their own project repositories and start modifying the new repo to add functionality.
As a result we had lots of problems. First, whenever the students would discover a problem with the code, they couldn't really use our fix since their repositories were out of sync.
Then, there was also the merging problem. If we wanted to use any of their code back in SC, we had to first spend some time making it work with the latest version.
And I am not even mentioning the fact that one had to make so many commits in order to upload sc that we had *four* of the student projects making the "top 10 by commits" column on java.net for January and February:
(look for the sc- prefixes)
Hence, I've been thinking for some time now that we should have a project template that makes it easy to write plugins without having to clone the whole sip-communicator repository and that would allow you to stay up to date.
Such a project template would have to copy the directory structure of sip-communicator (i.e. it will have to have src, classes, lib, and resources directories) but not its contents.
The tricky part is that in the new project you'd still have dependencies on sip-communicator libs. The best thing to do in order to resolve that is to simply assume that the developer using the template would have sip-communicator's sources in the same directory as the template itself.
For example, in a case where John Doe is working on some project called "SC BASED PROJECT", he would have the following structure:
The build.xml file of the template (sc-based-project) would therefore be able to include all necessary libs from sip-communicator by referencing them as.
Times are more than ripe now since the google summer of code students could all use such a template.
So I guess my question is: Is there a volunteer that would like to create and maintain such a java.net project that could be used as a template by new developers?
I know that the irc4sc guys (http://irc4sc.dev.java.net) are using the mechanism so whoever takes that up would be able to use their structure as an example.
So, any takers?