|
Boost : |
From: Rainer Deyke (rdeyke_at_[hidden])
Date: 2022-08-21 14:14:52
Here is my quick review of Boost.URL. I vote to ACCEPT this library.
It may not be perfect, but it's a good enough solution for a real problem.
I do have some concerns:
- The lack of IRI support is unfortunate. It's 2022; we should all
be writing software with Unicode support by default. However, this can
be built on top of Boost.URL, and isn't needed in all cases.
- The "string+offsets" implementation means that a lot of characters
need to be copied every time something at the left end of a long URL is
modified - for example when changing an http URL to use https. This is
unlikely to cause a problem in most circumstances, but it's something to
be aware of.
On 13.08.22 04:29, Klemens Morgenstern via Boost wrote:
> Some questions to consider:
>
> - Does this library bring real benefit to C++ developers for real world
> use-case?
Yes.
> - Do you have an application for this library?
Yes.
> - Does the API match with current best practices?
It's good enough.
> - Is the documentation helpful and clear?
Yes, but I did find a few errors that should be fixed. One of the
examples on https://master.url.cpp.al/url/containers/authority.html does
not match the text. I have to admit I skipped over the customization
section.
> - Did you try to use it? What problems or surprises did you encounter?
No.
> - What is your evaluation of the implementation?
Like many Boost libraries, I found the implementation fairly opaque.
Class url delegates to url_base, which delegates to url_view_base, which
delegates to detail::url_impl, with much of the functionality spread out
over various view classes. This isn't a problem per se, but it makes
casual reading difficult.
-- Rainer Deyke (rainerd_at_[hidden])
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk