[iostreams] Entire iostreams library outdated in 1.34.0?

Following up on a discussion started on the boost-users list, under the same subject. It seems that a significant number of changes were made to the boost.iostreams library on the RC_1_33_0 branch, but never merged into the trunk. There are also a few changes on the RC_1_34_0 branch that have not been merged to into the trunk. There has also been some work on the trunk, some of which is on one of those branches, a few cases of merges between one of those branches and the trunk, and I found at least one case of apparent merging with code rearrangement or other changes (at least, diff seemed to not match up the (similar by eye) changes). So basically there is a bit of a mess in the iostreams library. I'm volunteering to help clean it up. I'm planning to put together a patch to the trunk, and another patch to the RC_1_34_0 branch, such that * changes that are presently only on the RC_1_33_0 or RC_1_34_0 branch are merged to trunk * changes that are presently only on the RC_1_33_0 branch are merged to the RC_1_34_0 branch. A preliminary skim of differences doesn't look too bad; hopefully I won't find anything too icky. Some issues / questions: * I can test these changes against a couple of versions of gcc. I can't test against anything else. So I'll need help with that. * Somebody else should probably review the patches. * I don't have commit privilages, so someone else will need to take care of that step. * Thomas would of course need to approve any changes to the RC_1_34_0 branch. The library including the changes on the RC_1_33_0 branch tested as part of the 1.33.x series of releases, but testing with those changes stopped once testing resources were redirected away from that series. So there is some risk that some of these changes might prove incompatible with other parts of the 1.34.0 release. From a quick skim, that doesn't look to likely, but it is a risk. * Obviously 1.34.0 has gone out. So any changes on the RC_1_34_0 branch would only be picked up by a 1.34.1 release.

Kim Barrett wrote:
So basically there is a bit of a mess in the iostreams library. I'm volunteering to help clean it up. I'm planning to put together a patch to the trunk, and another patch to the RC_1_34_0 branch, such that
* changes that are presently only on the RC_1_33_0 or RC_1_34_0 branch are merged to trunk
* changes that are presently only on the RC_1_33_0 branch are merged to the RC_1_34_0 branch.
Good, thanks for volunteering to do this.
Some issues / questions:
* I can test these changes against a couple of versions of gcc. I can't test against anything else. So I'll need help with that.
I can test with a variety of Windows compilers if that helps.
* Somebody else should probably review the patches.
Post them to the list, and someone will try and look over them.
* I don't have commit privilages, so someone else will need to take care of that step.
Will do.
* Thomas would of course need to approve any changes to the RC_1_34_0 branch. The library including the changes on the RC_1_33_0 branch tested as part of the 1.33.x series of releases, but testing with those changes stopped once testing resources were redirected away from that series. So there is some risk that some of these changes might prove incompatible with other parts of the 1.34.0 release. From a quick skim, that doesn't look to likely, but it is a risk.
We'll try and get them well tested, before going into cvs.
* Obviously 1.34.0 has gone out. So any changes on the RC_1_34_0 branch would only be picked up by a 1.34.1 release.
Or 1.35 :-) One other question: some of the patches fix a memory leak right? Do we have a new test case to try and catch this (assuming it's possible to devise one)? Many thanks for offering to help sort this out. John.

At 9:58 AM +0100 5/15/07, John Maddock wrote:
* I can test these changes against a couple of versions of gcc. I can't test against anything else. So I'll need help with that.
I can test with a variety of Windows compilers if that helps.
Yes, that helps. The compilers I have reasonably quick access to are linux-ppc-gcc-3.4, linux-x86-gcc-4.1, and darwin-x86-4.0.1. I'm also going to have to figure out how to run the regression tests again, this time under bbv2.
* Somebody else should probably review the patches.
Post them to the list, and someone will try and look over them.
They look like they might be big enough that I'll probably end up posting them to the patch tracker (which is now moved over to Trac?).
* I don't have commit privilages, so someone else will need to take care of that step.
Will do.
Thanks! A progress update: - I've checked through most of the code merge from RC_1_33_0 to trunk. There are still a couple of files with non-trivial changes that I'm wading through. Mostly pretty straightforward accept the change from the branch, with a couple cases where someone else has already done the merge, but slightly differently, just to make this project more interesting. - I've checked through all of the code merge from RC_1_34_0 to trunk. This was pretty easy, there were only a couple, and one of them I think is actually a subset of one of the RC_1_33_0 changes. - There are large numbers of differences in .html files that I have not yet examined. I have day-job stuff to do today, but should be able to finish the code merging tonight. As noted above, I need to figure out how to run tests locally. And I need to figure out what's up with the .html files.

At 12:21 PM -0600 5/15/07, Thomas Witt wrote:
Thanks Kim! We are planning to do a 1.34.1 release. It would be great if the patch is ready by end of this week.
I think I can meet that schedule. I've reviewed all of the differences between RC_1_33_0 and trunk, and between RC_1_34_0 and trunk. I have a couple more things to look at more closely and I'll be ready to generate an initial provisional patch that I can test. Now, if I only knew the testing incantation... (I expect I can figure it out, but probably not before I break for dinner tonight).

At 8:03 PM -0400 5/15/07, Kim Barrett wrote:
At 12:21 PM -0600 5/15/07, Thomas Witt wrote:
Thanks Kim! We are planning to do a 1.34.1 release. It would be great if the patch is ready by end of this week.
I've sent patches to John Maddock for Windows testing, and cc'ed Thomas. They're rather big, so I didn't send them to the list. If anyone wants a copy to try on some other platforms, speak up and I'm sure one of us will send it to you fairly soon.
participants (3)
-
John Maddock
-
Kim Barrett
-
Thomas Witt