[Nitro] Gem dependencies.

TRANS transfire at gmail.com
Wed Apr 5 20:05:48 EDT 2006

On 4/5/06, Bryan Soto <bryan.a.soto at gmail.com> wrote:
> On 4/5/06, TRANS <transfire at gmail.com> wrote:
> > > facets, '~> 1.2'     # This assumes that anything that changes
> > > interface will be 2.0+
> >
> > Hmm... it's not up to 1.3+? Well if not then I think make it
> >
> I deleted a long explanation because I thought of a concise way to put
> it. The assumption is, If you have to change your tests or old code to
> make things work (excluding changes made to accommodate a bug), you
> should bump your major version.
> Basically, that dependency assumes that anything in the 1.x range will
> be backwards compatible in the interface. Not in the implementation or
> bug-wise.
> >   facets, '~> 1.2.0'
> >
> > Tell me if you think I've misjudged on this, but my reasoning is that
> > Facets has so many libs that any _one_ interface change in any _one_
> > of them requires a version jump and I don't want to be pushing version
> > 5.0+ just b/c of four such changes.
> >
> Perhaps it'd be best if you explain your version scheme in terms of
> backwards compatibility. Will 1.3 not be backwards compatible to 1.2?
> If that is the case, then you're probably right about 'facets ~>
> 1.2.0'. At least if you explain how you plan to version, we can figure
> out how to depend on it from there.

Yea, Facets is a little special b/c it is a large collection of lots
of little libs. So it's less black-and-white when it comes to

For instance, The lastest release had a method 'kernel/meta'  which I
tried changing to 'kernel/instance', but Ara astutely suggested I call
it '__self__' which I will. So it's just one method and not a commonly
used one either, but nontheless it consititutes an interface change.

Because there so much in there it's just a lot more likely for there
to be some sort of interface change for any given release.* B/c of
this versioning for Facets I think needs to be: major for major
interface change, minor for minor interface changes and teeny is no
interface change. Does that sound reasonble?

Hmm... I guess that means I need to bump to 1.3 for the next version.


* This is also why I had flirted with date-based versions, btw.

More information about the Nitro-general mailing list