boostorg / multiprecision

Boost.Multiprecision
Boost Software License 1.0
197 stars 112 forks source link

Ubuntu 18.04 to be deprecated in GHA #487

Closed ckormanyos closed 1 year ago

ckormanyos commented 2 years ago

We need to be sure to look into this line in relation to the December planned deprecation of Ubuntu 18.04 on GHA.

I just hit one of the four hour scheduled brown-outs inadvertently and had previously been unaware of this scheduled deprecation.

Cc: @jzmaddock and @mborland and @NAThompson

ckormanyos commented 2 years ago

In this issue, maybe it makes sense to create a Docker impage of the older ubuntu distro with the older GCC/clang compilers pre-installed?

Maybe this (or something like it) is needed in general for Boost and we could make a generic image used by multiple Boost CIs running on GHA?

Unfortunately, I do not know how to do this myself.

jzmaddock commented 2 years ago

I'm not sure what to make of this - ordinarily I would say lets deprecate anything not supported by Github, but that removes testing for all gcc versions prior to 9 :(

Maybe I'll see if earlier gcc versions can be run successfully on unbuntu-20.

Or we could move all those tests on to the drone runner.

ckormanyos commented 2 years ago

see if earlier gcc versions can be run successfully on unbuntu-20.

Indeed. I am doing this in another project. So far on Ubuntu 20.04, I've found:

I'm checking for clang++8.

All of these need to be installed, as we do on the fly with sudo apt install.

ckormanyos commented 2 years ago

Revision: On Ubuntu 20.04 LTS in GHA, I can find and use:

I've installed with the following command:

sudo apt install g++-7 g++-8 g++-9 clang-8 clang-9
mborland commented 2 years ago

I was thinking about this last night because I hit a GCC5 specific error on a math PR. At what point do we stop testing on older compilers? We continue to modernize and add newer tool chains but never discontinue old ones. I would argue whatever the vanilla CI system can provide (seems like GCC7) is sufficient.

ckormanyos commented 2 years ago

At what point do we stop testing on older compilers? We continue to modernize and add newer tool chains but never discontinue old ones. I would argue whatever the vanilla CI system can provide (seems like GCC7) is sufficient.

As long as we don't reach that point out of frustration, I'm OK with our decisions. But I must admit, I'm rapidly reaching that point as well.

jzmaddock commented 2 years ago

Ubuntu-18.04 is still part of Ubuntu's LTS distributions, still supported, and still on their downloads page. It's gcc-5 I believe.

For Boost.Config I've just moved everything that's done on 18.04 to drone: https://github.com/boostorg/config/pull/443.

It's a right PITA when CI keeps moving about under you though!

ckormanyos commented 1 year ago

Done. Correct @jzmaddock and @mborland ?