My personal experience from Ant is: dont make the public API too big. You cant refactor any more in the case you want without loosing backwards compability.
Some ideas: - Using "*.spi.*" or "*.internal.*" for packages which are not part of the public API. - Only org.apache.ivy is the public API. You define base classes and interfaces here. Try to keep bwc on org.apache.ivy.util (helper classes), too. Jan >-----Ursprüngliche Nachricht----- >Von: Gilles Scokart [mailto:[EMAIL PROTECTED] >Gesendet: Dienstag, 29. Mai 2007 13:22 >An: [email protected] >Betreff: Published API (was Extending IvyBuildList) > > >The mail of Jean-Baptiste raises a question: What is our >published API? > >For the moment we only considered the backward compatibility of our ant >interface. But that should maybe change. > >Shouldn't we start to define what is our published API, what are the >internal classes subject to changes, and what are the 'stable' >interface >that can be reused? > >I guess that's an important information for an open source >project. But it >is also something difficult and it might quickly be heavy. > >WDYT? > >Gilles > >> -----Original Message----- >> From: Jean-Baptiste Quenot [mailto:[EMAIL PROTECTED] >> Sent: mardi 29 mai 2007 12:39 >> To: [EMAIL PROTECTED] >> Subject: Extending IvyBuildList >> >> Hi Ivy, >> >> Thanks for providing this great API, and more particularly the >> IvyBuildList Ant task that I extend to generate my Hudson >> configuration files automatically for continuous build of my >> project. >> >> I only had to slightly modify it to be able to get the list of >> sorted modules, and the list of build files. See the attached >> patch. >> >> NOTE: this patch is based on Ivy 1.4.1, but it should be possible >> to do the same thing on trunk (the patch does not apply on trunk). >> >> If this change makes sense to you, I can file a JIRA issue. >> >> WDYT? >> -- >> Jean-Baptiste Quenot >> aka John Banana Qwerty >> http://caraldi.com/jbq/ > >
