> What do you mean by "a contract"? Sounds like "a
> commitment to support an 
> interface, in the way it is now, on an ongoing
> basis".

I don't think it means that, but from what I've seen mentioned
in previous discussions, it does mean making a reasonable effort
to _notify_ those holding a contract before putting a change out that
would affect them.  That's arguably a useful concept, unless one _likes_
breakage, IMO.

[...]
> Aas far as "filing bugs" go... I dont have much
> confidence that filing a bug 
> "there isnt enough documentation on this", is going
> to go anywhere. Do you? 
> be honest now. if they are "too busy" to write it up
> in the first place, I 
> dont think that some random person filing a bug, is
> going to get much 
> traction either.
[...]
> well, gee.. if there are "cooperating projects,
> sharing interfaces"... it 
> seems like the sane thing to do, would be to DOCUMENT
> those interfaces, to a 
> level suitable for (semi)-project-external use,
> wouldnt it? :-) That just 
> seems like good technical practice to me.
> 
> However, by dint of your hypothetical situation about
> two projects sharing 
> an interface... I think that also in and of itself,
> should never be allowed 
> to be private, in the context of OpenSolaris.
> In my opinion, it should be on the public source
> tree, and documented as an 
> interface. Otherwise, you just removed the "open"
> from "opensolaris".
> 
> [if a developer is already share-minded enough to be
> sharing with "another 
> project".. the incremental effort to share more
> widely, should be relatively 
> small.
[...]

Every file format and non-static function call or external variable
is _potentially_ an interface.  If they were all documented to the level
that someone not working closely on that particular bit of code could
safely manipulate them, I suspect little other work would get done.

That having been said, I'd like to see most of whatever documentation
already exists for contracted or consolidation-private (i.e. multi-project)
private interfaces  made available, with some boilerplate disclaimers added
if that will make happier those worried that someone might misconstrue that
documentation as some indication of stability that it isn't.

If the code is open, then whatever documentation already exists (not necessarily
implying that more must be written) should ideally be released too.

IMO the earlier point also holds that if there's no other way to do something
than via a private interface, then there should be an RFE for a public interface
to do the job.

But I suspect getting a "contract" on some private interface needn't be 
incredibly
difficult, and if there's very few potential consumers, may be cheaper or more
flexible than promoting it to a public interface, and would certainly be more
maintainable than just using it (documented or not) without some assurance
of notification of future changes.
 
 
This message posted from opensolaris.org

Reply via email to