Boost logo

Boost Users :

From: raindog_at_[hidden]
Date: 2008-08-30 00:46:17


My 2 cents:

1. Point releases should never break interfaces ever, they should be for those organizations who need minor bugs fixed but don't have the spare cycles to rework their code due to interface changes. Think of all the test cases, etc that might need rewritten and even the test case code themselves might depend on the same library. Interface changes will reduce the number parties able to even consider taking the release.

2. Organizations like those with the 10 year old tool chains are not going to consume any releases after their already accepted dependancies regardless, due to whatever risks they have whether contrived or not.

3. Major releases will generally be comsumed by organixations starting new projects or major revisions of existing projects because this is when they can afford the risks and at the same time will have spare cycles.


4. Developers or organizations agile enough to take point releases or patches will have no problem using a vcs system to fetch those changes or to apply patches, they should be experts at this. They will probably also be taking all major releases too.

5. My opinion is that for any shop with multiple layers of dependancies, as described below, they should choose a version of the dependancy and upgrade across the site only with major revisions if deemed necessary. For general software development, they will be very few compelling reasons that will warrant a library upgrade. The last thing one would desire is to bore developers with tasks they generally dislike ( library upgrades being one of those ).


Josh phillips
Virus analyst
Microsoft

Sent from my Verizon Wireless BlackBerry

-----Original Message-----
From: Beman Dawes <bdawes_at_[hidden]>

Date: Fri, 29 Aug 2008 18:01:15
To: <boost-users_at_[hidden]>
Cc: <boost_at_[hidden]>
Subject: Re: [Boost-users] [filesystem][xpressive] Hotfix patches available
        for 1.36.0


Michael Marcin wrote:
> Beman Dawes wrote:
>> Hotfix patches are available to fix Boost.Filesystem and
>> Boost.Xpressive [1.36.0] problems. See
>> https://svn.boost.org/trac/boost/wiki/ReleasePractices/HotFixes
>>
>> Providing hotfix patches is something new and experimental for Boost.
>> Please let us know if you find the patches useful or have other comments.
>>
>
> Are these libraries usable without these hotfixes or should they be
> considered required?

As far as Boost.Filesystem goes, it is perfectly usable. The fixes are
primarily concerned with deprecated names. They only would be considered
required if so much existing user code failed to compile that it is
easier to apply the fixes than update the existing user code.

> At my company we use Boost directly and use libraries that depend on
> Boost. We push those developers to upgrade their libraries when a new
> version of Boost is released and we realize that it is a burden on them
> and us to make the switch to the new versions.

In that sort of environment it is often best to stick with a particular
version of Boost and other libraries until you reach a point in internal
development cycles that it is convenient to change over to the newest
versions of the libraries.

> Generally this means there is a lag between release and adoption as we
> cannot move forward with a new version of Boost until all the third
> party libraries that we interface with upgrade their libraries to the
> new version of Boost.

Understood. That's quite a common scenario in mid-size and larger shops.

> In my opinion this makes hotfixes worse than useless for us. We might
> not be able to upgrade to Boost+libraries that use Boost. For instance
> if library A upgrades to 1.36 plain and library B upgrades to 1.36 plus
> all or some of the hotfixes. If this compatibility problem occurs and
> the libraries also provide critical fixes to their own library then I
> believe we are stuck and must either drop the library, drop boost, or
> wait for everything to resynchronize.
>
> I may be overreacting but this seems very dangerous to me.

Depends. In the kind of synchronized environment you are talking about,
version upgrades do have to be managed carefully.

OTOH, independent developers and other small and agile organizations may
  prefer to have the latest fixes, particularly if they are being
impacted by the bugs being fixed.

> If there are critical fixes I'd much rather have a point release which
> we can easily identify to the third party library providers. If the
> fixes are not critical enough to justify making a point release than
> they should wait until the next release.

That makes sense in the environment you describe.

HTH,

--Beman

_______________________________________________
Boost-users mailing list
Boost-users_at_[hidden]
http://lists.boost.org/mailman/listinfo.cgi/boost-users


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net