> The other lesson from that is the following: in open source, there is no > such thing as private code.
The goal of InterfaceAudiencme and InterfaceStability is not to prevent some one from using the code. It merely suggests who the interface is intended for and its stability. An interface marked Public and Stable guarantees backward compatibility. These are intended for every one to use. Changes to these interfaces must be done extra carefully to ensure this. One can still use LimitedPrivate/Private or Unstable/Evolving interfaces outside. But these interfaces can change freely, in non backward compatible way. The interface might even be deleted in future releases. Any one using it, do it at their own risk of seeing their code break and having to change their code as the interface evolves. Regards, Suresh