[Rubygems-developers] PATCH: respect requirements of gems

Eivind Eklund eivind at FreeBSD.org
Fri Apr 23 11:07:12 EDT 2004

On Fri, Apr 23, 2004 at 07:33:26AM -0400, Chad Fowler wrote:
> [Somebody]
> >We fully agree on this; I just see the API as a part of the dependency.
> I do too.  And, I think everyone who knows anything about programming 
> would too.  But, I don't think we have to enforce everything in code, 
> in the same way that I don't think we have to check "type" for method 
> parameters, or make everyone follow the same naming conventions with 
> code.  I believe the inclusion of Jim's additional 1.*.* kind of thing 
> will give us the functionality we need to *recommend* a sensible 
> convention for version numbering of gems.  And, the community in actual 
> practice will adhere to it.

Translating this into an actual version protocol, it gives the following

* The major verion of a library may be encoded as several fields in the
  pacakge version number.

* A library package MUST document what fields of the version number
  constitute the major version.

* Any require of a library MUST include what major externally visible
  version of the package is required

* Any release of a library that change the API MUST bump the major
  externally visible version of the package

These need to be documented carefully in the documentation on how to
make gems, then.  It's substantially the same as the single version
number scheme I proposed, except that how the number is encoded varies
from package to package.


More information about the Rubygems-developers mailing list