asio review results -- asio accepted

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

asio review results -- asio accepted

Jeff Garland
All -

I'm pleased to announce that asio has been accepted into Boost.  As
usual with a Boost review, the asio review generated plenty of
discussion, issues, and controversy.  Comments ranged from high praise,
including success stories of projects in production, to serious design
concerns and issues.  On balance, in my judgment, asio provides a
generally solid library that is ready for inclusion into the Boost
library -- providing key functionality in an area that developers have a
strong need.

Of course, like anything else, asio is not perfect -- a number of key
issues were uncovered during the review.  In terms of required changes
I'm only going to cite a few:

- Fixes to dynamic memory allocation issues
- Interface changes to support ipv4 and ipv6 seamlessly at runtime
- Improvements to support strongly typed socket interfaces

Chris has communicated a couple possible solutions to the memory
allocation issue and I'll ask that the interface and other changes for
this issue continue to be discussed on the Boost list so consensus can
be achieved on the best resolution.

Other key improvements that should be explored as future enhancements
include:

- Possible removal of some of the c-style interfaces
- Exploration of higher level iostream integrations
- Performance improvements
- Improved documentation (wouldn't be Boost w/o this one)

Chris has a much longer list of changes garnered from the review and is
well on his way to addressing many of them.

Note that there were several threads and discussions about performance,
which is particularly critical for the domain covered by asio. One of
the performance issues is the dynamic memory allocation issue cited
above.  In general, the reviewers have extremely high expectations here.
However, after reviewing the discussion and library it's my belief that
many developers will find asio performance sufficient to build
significant projects with only the memory allocation changes. I expect
Chris will be able to address some of the other performance issues cited
by reviewers in asio over time.

Once again I'll apologize to the Boost community for the delay in the
review results.  The delay was entirely due to my own personal
scheduling issues and should not reflect on asio in any way. Thanks
again to all the reviewers for their effort and especially to Chris for
his tremendous effort in bringing asio to Boost!

Jeff





_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

David Abrahams
Jeff Garland <[hidden email]> writes:

> All -
>
> I'm pleased to announce that asio has been accepted into Boost.  

Thanks for completing what must've been a difficult review judgement,
Jeff.

> As usual with a Boost review, the asio review generated plenty of
> discussion, issues, and controversy.  Comments ranged from high
> praise, including success stories of projects in production, to
> serious design concerns and issues.  On balance, in my judgment,
> asio provides a generally solid library that is ready for inclusion
> into the Boost library -- providing key functionality in an area
> that developers have a strong need.
>
> Of course, like anything else, asio is not perfect -- a number of key
> issues were uncovered during the review.  In terms of required changes
> I'm only going to cite a few:
>
> - Fixes to dynamic memory allocation issues
> - Interface changes to support ipv4 and ipv6 seamlessly at runtime
> - Improvements to support strongly typed socket interfaces

If you're only citing a few of the required changes, where is the
complete list?  Keeping it out of public view doesn't make any sense
to me.

> Chris has communicated a couple possible solutions to the memory
> allocation issue and I'll ask that the interface and other changes for
> this issue continue to be discussed on the Boost list so consensus can
> be achieved on the best resolution.
>
> Other key improvements that should be explored as future enhancements
> include:
>
> - Possible removal of some of the c-style interfaces
> - Exploration of higher level iostream integrations
> - Performance improvements
> - Improved documentation (wouldn't be Boost w/o this one)
>
> Chris has a much longer list of changes garnered from the review and is
> well on his way to addressing many of them.
>
> Note that there were several threads and discussions about performance,
> which is particularly critical for the domain covered by asio. One of
> the performance issues is the dynamic memory allocation issue cited
> above.  In general, the reviewers have extremely high expectations here.
> However, after reviewing the discussion and library it's my belief that
> many developers will find asio performance sufficient to build
> significant projects with only the memory allocation changes. I expect
> Chris will be able to address some of the other performance issues cited
> by reviewers in asio over time.

Are these issues addressable as an implementation detail, or will it
cause an interface change?

--
Dave Abrahams
Boost Consulting
www.boost-consulting.com

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Christopher Kohlhoff
In reply to this post by Jeff Garland
--- Jeff Garland <[hidden email]> wrote:
> I'm pleased to announce that asio has been accepted into
> Boost.  As usual with a Boost review, the asio review
> generated plenty of discussion, issues, and controversy.
> Comments ranged from high praise, including success stories of
> projects in production, to serious design concerns and issues.
> On balance, in my judgment, asio provides a generally solid
> library that is ready for inclusion into the Boost library --
> providing key functionality in an area that developers have a
> strong need.

Thanks Jeff, and thanks everybody for participating in the
review. The review process has been very helpful in contributing
ideas to make the library better.

The current plan is for the next version to include breaking
interface changes arising from the review, plus some features on
which I would like to get more feedback (such as custom memory
allocation and dual IPv4/6 support). At that time, in addition
to the changelog, I will publish a list of review changes that
are yet to be made.

Cheers,
Chris

P.S. did the review result get posted to the boost-users list?


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Christopher Kohlhoff
In reply to this post by David Abrahams
Hi Dave,

--- David Abrahams <[hidden email]> wrote:
[ ... performance issues ... ]
> Are these issues addressable as an implementation detail, or
> will it cause an interface change?

The performance improvements I have in mind will not cause the
interface to change in a breaking way, although it is possible
they may be additive.

Cheers,
Chris



_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

David Abrahams
Christopher Kohlhoff <[hidden email]> writes:

> Hi Dave,
>
> --- David Abrahams <[hidden email]> wrote:
> [ ... performance issues ... ]
>> Are these issues addressable as an implementation detail, or
>> will it cause an interface change?
>
> The performance improvements I have in mind will not cause the
> interface to change in a breaking way, although it is possible
> they may be additive.

I'm thinking specifically of the memory allocation issue.  That too?

--
Dave Abrahams
Boost Consulting
www.boost-consulting.com

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Jeff Garland
In reply to this post by David Abrahams
David Abrahams wrote:

>> Of course, like anything else, asio is not perfect -- a number of key
>> issues were uncovered during the review.  In terms of required changes
>> I'm only going to cite a few:
>>
>> - Fixes to dynamic memory allocation issues
>> - Interface changes to support ipv4 and ipv6 seamlessly at runtime
>> - Improvements to support strongly typed socket interfaces
>
> If you're only citing a few of the required changes, where is the
> complete list?  Keeping it out of public view doesn't make any sense
> to me.

What I was trying to say was that I was only requiring a 3 changes -- so
that's the entire list.  My feeling was these were the only 'must-have'
changes even though there was certainly discussion of other changes and
extensions.

>> Chris has communicated a couple possible solutions to the memory
>> allocation issue and I'll ask that the interface and other changes for
>> this issue continue to be discussed on the Boost list so consensus can
>> be achieved on the best resolution.
>>
>> Other key improvements that should be explored as future enhancements
>> include:
>>
>> - Possible removal of some of the c-style interfaces
>> - Exploration of higher level iostream integrations
>> - Performance improvements
>> - Improved documentation (wouldn't be Boost w/o this one)
>>
>> Chris has a much longer list of changes garnered from the review and is
>> well on his way to addressing many of them.
>>
>> Note that there were several threads and discussions about performance,
>> which is particularly critical for the domain covered by asio. One of
>> the performance issues is the dynamic memory allocation issue cited
>> above.  In general, the reviewers have extremely high expectations here.
>> However, after reviewing the discussion and library it's my belief that
>> many developers will find asio performance sufficient to build
>> significant projects with only the memory allocation changes. I expect
>> Chris will be able to address some of the other performance issues cited
>> by reviewers in asio over time.
>
> Are these issues addressable as an implementation detail, or will it
> cause an interface change?

I believe they are only implementation details (seems that Chris agrees
with this) -- the c-style interfaces issue being the exception.  But it
is a large library so it's possible we've missed something in the public
interface that will need to change.    As for the c-style interfaces,
the review discussion wasn't sufficient to convince me that it was a
possible change and the benefits weren't clear so I'm leaving it to the
discretion of the library author.

Jeff


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Bulygin, Sergey
In reply to this post by Jeff Garland
"Christopher Kohlhoff" <[hidden email]> wrote:
> The current plan is for the next version to include breaking
> interface changes arising from the review, plus some features on
> which I would like to get more feedback (such as custom memory
> allocation and dual IPv4/6 support). At that time, in addition
> to the changelog, I will publish a list of review changes that
> are yet to be made.
 
Congrats, Chris and all relevant community!

Is the Asio task list available somewhere to see what is likely to be changed, compared to the current 0.3.6 version?

What is the suggested roadmap for those, who wish to adopt Asio right now? Should we use 0.3.6 as is, or should we consider those "breaking interface changes" since they are going to change conceptual library design?

Best Regards,
Sergey Bulygin

PS Just as a minor hint for review wizard: it's time to change Asio status in formal_review_schedule.html from "Result Pending" to "Accepted".

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Jeff Garland
In reply to this post by David Abrahams
David Abrahams wrote:

> Christopher Kohlhoff <[hidden email]> writes:
>
>> Hi Dave,
>>
>> --- David Abrahams <[hidden email]> wrote:
>> [ ... performance issues ... ]
>>> Are these issues addressable as an implementation detail, or
>>> will it cause an interface change?
>> The performance improvements I have in mind will not cause the
>> interface to change in a breaking way, although it is possible
>> they may be additive.
>
> I'm thinking specifically of the memory allocation issue.  That too?


That one changes the interface and hence is on the required change list.

Jeff

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Giovanni Piero Deretta
In reply to this post by Jeff Garland
Congratulation Chris.
While I did vote aganist the library, I'm glad that in the end it was
accepted. During the review discussions Chris has shown that he is very
willing to address some of the issues that have been brought up and it
did clarify some other problems or misconceptions. In the end I think
that it is going to be a great, and very very needed, library.
Keep up the good work.

--
Giovanni P. Deretta
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Christopher Kohlhoff
In reply to this post by Bulygin, Sergey
Hi Sergey,

--- "Bulygin, Sergey" <[hidden email]> wrote:

> Is the Asio task list available somewhere to see what is likely to be
> changed, compared to the current 0.3.6 version?

As yet, not in a readily available form, no. Most of the interface
changes have already been comitted into cvs, so I suggest having a look
there (http://sourceforge.net/cvs/?group_id=122478). However the
anonymous CVS repository doesn't seem to have been synchronised for
several weeks, so it's not totally up-to-date.

> What is the suggested roadmap for those, who wish to adopt Asio right
> now? Should we use 0.3.6 as is, or should we consider those "breaking
> interface changes" since they are going to change conceptual library
> design?

I believe that the changes 0.3.6->0.3.7 will not substantially affect
the structure of a typical program. Most impact will be in name changes
(e.g. asio::demuxer to asio::io_service, asio::stream_socket to
asio::ip::tcp::socket). So if you want to start now 0.3.6 should be ok.

Cheers,
Chris


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Franz Fehringer-2
In reply to this post by Jeff Garland
Perhaps this could be reflected on the boost main page?

Greetings

Franz

btw is there a chance that asio will be in 1.35?

----- Original Message -----
From: "Jeff Garland" <[hidden email]>
To: <[hidden email]>
Sent: Wednesday, March 22, 2006 5:31 PM
Subject: [boost] asio review results -- asio accepted


> All -
>
> I'm pleased to announce that asio has been accepted into Boost.  As
> usual with a Boost review, the asio review generated plenty of
> discussion, issues, and controversy.  Comments ranged from high praise,
> including success stories of projects in production, to serious design
> concerns and issues.  On balance, in my judgment, asio provides a
> generally solid library that is ready for inclusion into the Boost
> library -- providing key functionality in an area that developers have a
> strong need.
>
> Of course, like anything else, asio is not perfect -- a number of key
> issues were uncovered during the review.  In terms of required changes
> I'm only going to cite a few:
>
> - Fixes to dynamic memory allocation issues
> - Interface changes to support ipv4 and ipv6 seamlessly at runtime
> - Improvements to support strongly typed socket interfaces
>
> Chris has communicated a couple possible solutions to the memory
> allocation issue and I'll ask that the interface and other changes for
> this issue continue to be discussed on the Boost list so consensus can
> be achieved on the best resolution.
>
> Other key improvements that should be explored as future enhancements
> include:
>
> - Possible removal of some of the c-style interfaces
> - Exploration of higher level iostream integrations
> - Performance improvements
> - Improved documentation (wouldn't be Boost w/o this one)
>
> Chris has a much longer list of changes garnered from the review and is
> well on his way to addressing many of them.
>
> Note that there were several threads and discussions about performance,
> which is particularly critical for the domain covered by asio. One of
> the performance issues is the dynamic memory allocation issue cited
> above.  In general, the reviewers have extremely high expectations here.
> However, after reviewing the discussion and library it's my belief that
> many developers will find asio performance sufficient to build
> significant projects with only the memory allocation changes. I expect
> Chris will be able to address some of the other performance issues cited
> by reviewers in asio over time.
>
> Once again I'll apologize to the Boost community for the delay in the
> review results.  The delay was entirely due to my own personal
> scheduling issues and should not reflect on asio in any way. Thanks
> again to all the reviewers for their effort and especially to Chris for
> his tremendous effort in bringing asio to Boost!
>
> Jeff
>
>
>
>
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost 

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Christopher Kohlhoff

--- "Dr. Franz Fehringer" <[hidden email]> wrote:

> btw is there a chance that asio will be in 1.35?

I don't know what the timetable for 1.35 is, but I'm currently focused
on getting the breaking interface changes done. Hopefully these should
reach a final form in time for 1.35. Some of the requested enhancements
that are additions to the interface may not make it, however.

Cheers,
Chris



_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: asio review results -- asio accepted

Ronald Garcia
In reply to this post by Franz Fehringer-2
Hi Franz,

Thanks for pointing out the oversight.  I have added the announcement  
to the front page.

Cheers,
ron

On Apr 9, 2006, at 3:55 AM, Dr. Franz Fehringer wrote:

> Perhaps this could be reflected on the boost main page?
>
> Greetings
>
> Franz
>
> btw is there a chance that asio will be in 1.35?
>
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost