Hi Curtis,
On 3/28/12 12:50 PM, Curtis Rueden wrote:
Of course, as an API most people will simply need to put visad.jar
in their classpath.
Am I right?
Yes, because VisAD currently bundles all the dependencies in the same
JAR file. However, if you want more flexible handling of dependencies,
it becomes more difficult.
Maven's biggest strength is in dependency management. You can compile
a JAR without needing to compile all the dependent JARs, or even have
them committed to your VCS.
I mean't that the core VisAD api has no external dependencies other
than Java and Java3D.
The ant build process works very well, and we spent about a month
transitioning
VisAD from CVS/make to SVN/ant.
You wouldn't have to get rid of Ant. For another project I work on
(Bio-Formats), we kept the Ant build system and also added Maven POMs.
So you can choose which way to build. We have the option of removing
the Ant-based build system in the future, if/when it is no longer
being used.
I would say keep the Ant build in place until if/when it becomes necessary
to change - it works.
Git is not easier to use than SVN. It is a PITA to learn. But once you
learn it, it *rules*.
GitHub is easy to learn and use, and the most effective collaboration
tool I have ever used. Rather than having to email someone patches, or
give someone SVN commit rights, they can simply fork your repository
and go to town on their copy. Then, when they have something working
well, they submit a "pull request" to the upstream (i.e., official)
repository. It makes submitting changes for official inclusion a breeze!
Well if GitHub is easier to do branches than CVS/SVN, that would be a
big vote
yes from me.
Maven is imperfect, but the benefits outweigh the disadvantages.
The same is true for git/github.
I agree completely about Maven and Git being imperfect, but definitely
worth it. Of the top of my head I can't think of any downsides to
GitHub though—it's pretty fabulous. :-)
There is certainly pain involved in any technical migration or
transition, so doing so should always be carefully considered. But I
think if you migrated the system to Git, within 1-2 years you would
look back and wonder why you waited so long to do it. Git really is
amazing for collaboration, particularly among larger teams.
I wonder if we could mirror a release of VisAD, and experiment with a
mavenized
version in the Git/GitHub realm? I'm sorry that it would have to be
you, Julien
and Jon that would set this up, and being willing to help the community
learn
to use it.
What about commit rights? I would be concerned if anyone could commit at
anytime.
Tom