commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Smith" <mich...@iammichael.org>
Subject RE: Collections 1.1?
Date Tue, 19 Feb 2002 03:32:13 GMT
Morgan Delagrange wrote:
> AFAIK SequencedHashMap has never implemented Externalizable.  Right?

It does implement Serializable though.  Albeit indirectly.  The
implementation extends from HashMap which is serializable.  I didn't
realize that when I first implemented my new version.

This brings up an interesting issue though.  The Commons versioning
document does not specify how "serialization" or "externalization" are
handled.  Instead, the versioning standard is centered around the API
contracts (i.e. the method signatures).

For reference: http://jakarta.apache.org/commons/versioning.html

Going to 2.0 would be considered a "major releases" which is required
when "a new release is not at least interface-compatible".
"Interface-compatible" is defined as one which will "at most change the
private interface of a component, or simply add classes, methods and
attributes whose use is optional to both internal and external interface
clients."  There are two things to note here:  1) nothing about
serialization/externalization is mentioned, and 2) the addition of
optional attributes is interface compatible.  Adding additional
attributes usually requires additional fields, and probably includes a
change in the serialized form, yet this is still listed as
interface-compatible.

In general though, I think that being serializable or Externalizable is
something that needs to be maintained for full backwards compatibility.
The versioning document just seems to completely overlook that.

What are people's thoughts on this?  Does a serialization change require
a Major revision change?  Or is a Minor revision change acceptable
provided the serialization incompatibilities are noted in the
documentation?  Does your opinion change for classes that directly
implement Serializable or Externalizable vs classes that inadvertantly
inherited the interface?

regards,
michael


> ----- Original Message -----
> From: "Steve Downey" <steve.downey@netfolio.com>
> To: "'Jakarta Commons Developers List'"
> <commons-dev@jakarta.apache.org>
> Sent: Monday, February 18, 2002 6:58 PM
> Subject: RE: Collections 1.1?
>
>
> > As an incompatible change, it should be a release 2.0.
> >
> > You can't externalize an old SequencedHashMap and bring it
> back as a new
> > one.
> >
> > +1 on a new release of Collections, though.
> >
> >
> > > -----Original Message-----
> > > From: Morgan Delagrange [mailto:mdelagra@yahoo.com]
> > > Sent: Monday, February 18, 2002 3:46 PM
> > > To: Jakarta Commons Developers
> > > Subject: Collections 1.1?
> > >
> > >
> > > Hi all,
> > >
> > > If the reimplementation of SequencedHashMap passes muster and
> > > if we cook up
> > > a more satisfying LRUMap implementation, that may be a
> good reason to
> > > perform a 1.1 release of Collections.  I think it's
> > > definitely a good idea,
> > > and I'm willing to volunteer as a release manager.  Does
> > > anyone have other
> > > work they would like to include in this release?  (I know
> > > Michael has some
> > > pending patches, if anyone is feeling ambitious.)
> > >
> > > - Morgan
> > >
> > > P.S.  BTW, I don't think we tagged the 1.0 release code in
> > > CVS.  We should
> > > probably start doing that.
> > >
> > >
> > > _________________________________________________________
> > > Do You Yahoo!?
> > > Get your free @yahoo.com address at http://mail.yahoo.com
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > > <mailto:commons-dev-unsubscribe@jakarta.apache.org>
> > > For additional commands, e-mail:
> > <mailto:commons-dev-help@jakarta.apache.org>
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:commons-dev-unsubscribe@jakarta.apache.org>
> > For additional commands, e-mail:
> <mailto:commons-dev-help@jakarta.apache.org>
>
>
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
>
>
> --
> To unsubscribe, e-mail:
> <mailto:commons-dev-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail:
> <mailto:commons-dev-help@jakarta.apache.org>
>



--
To unsubscribe, e-mail:   <mailto:commons-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:commons-dev-help@jakarta.apache.org>


Mime
View raw message