[squid-dev] FYI: the C++11 roadmap

Marcus Kool marcus.kool at urlfilterdb.com
Wed Nov 5 12:27:12 UTC 2014



On 11/05/2014 02:01 AM, Amos Jeffries wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 6/05/2014 2:21 a.m., Amos Jeffries wrote:
>> I have just announced the change in 3.4.5 regarding C++11 support
>> and accompanied it with a notice that GCC verion 4.8 is likely to
>> become the minimum version later this calendar year.
>>
>> As it stands (discussed earlier):
>>
>> * Squid-3.4 needs to build with any GCC 4.0+ version with C++03.
>>
>> * Squid-3.6 will need to build with C++11.
>>
>> * The Squid-3.5 situation is still in limbo and will depend on how
>> long we go before it branches.
>
> Squid-3.5 retains GCC 4.0+ support shared with older versions.
>
>>
>> We have a growing list of items needing C++11 features for simpler
>> implementation. At this point I am going to throw a peg out and say
>> Sept or Oct for starting to use C++11 specific code features.
>
> This "peg" has now moved to Nov. The code cleanup and polishing
> patches now going into trunk work fine with C++11 builds but possibly
> not with compilers older than Clang 3.3 or GCC 4.8.

It is understandable that developers want to move forward. Almost everybody does.
But system administrators tend to do the opposite: they stay on a stable
platform for as long as possible while they wait for a new platform to mature.
Lets look at the most popular Linux server platform: Redhat 6 / CentOS 6.
Redhat 6 has gcc 4.4 while the successor Redhat 7 has gcc 4.8.
This means that when Squid gets a new requirement with gcc 4.8 the new versions
will not run on Redhat 6.

Because Redhat 6 is the most popular and stable server platform and Redhat 7
is not mature and does not meet my expectations of a stable platform
(especially systemd is still a big troublemaker), this implies that choosing
for C++11 effectively means that new releases of Squid will not be
installed any longer on the most popular Linux server platform.

So I think my opinion from the point of view of a system administrator
is clearly "choose for installability, choose C++03".

just my 2ct.

Marcus

> Amos
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.22 (MingW32)
>
> iQEcBAEBAgAGBQJUWaERAAoJELJo5wb/XPRjDscH/2CwRC04bqiKXbO5mjXQEdnu
> 2p+neAdQo26xWmYUo/pJUagoHchF9yq8yWqsZfeXI7Xi3X9NwKwAmnQmCrBxcLHc
> lzgNrbWJVIDG7BizbxZ/VRe9bBCe9v3vmSFKyenHd2jUc7XCnf3F++rsgzfHug+N
> +KLQ1rMfngzk9vyv+dVjOvz6y9hTC54x3Kqd8ek2Z8OXKP0MUrKOOcWxomwRx14H
> x3vv8mZtdBSQhU7bSKWgZa4P3zGA/OIVs6eQnqUGKajokgq3qgC33Hr0hWamqWcs
> yNH90ee5Bl9iwVvm2KVSWO8zlsOxN48E0Zr+Bgonc802esy4JYkt9Ijy2jJVP/s=
> =s3el
> -----END PGP SIGNATURE-----
> _______________________________________________
> squid-dev mailing list
> squid-dev at lists.squid-cache.org
> http://lists.squid-cache.org/listinfo/squid-dev
>


More information about the squid-dev mailing list