move Ubuntu 16.04 testing to 18.04
As preparation for a migration to Python 3, this gives us an environment where we have Python 3.6 by default. It is also the latest image currently available Travis. On Ubuntu 18.04, all versions of GCC < 9 are natively packaged [0-3], so we can drop the ubuntu-toolchain-test-r PPA for these builds. We can also drop the LLVM PPAs for Clang 4, 7, and 8 that are natively packaged [4-6]. The GCC 9 build which still needs the ubuntu-toolchain-test-r PPA needs to be specified slightly differently because this PPA is not in Travis' safe sources list for Bionic [7]. Note that we have left the fuzzing build on Ubuntu 16.04. This is because the latest version of AFL (2.52b) seems somehow busted on Ubuntu 18.04. It produces a binary that consistently crashes, complaining about a bad address to posix_spawnp. After some extensive searching, I found a clue [8] that suggests it is a bad interaction between AFL and GCC, but the suggestion to use afl-clang instead does not alleviate my problem. [0]: https://packages.ubuntu.com/bionic/g++-5 [1]: https://packages.ubuntu.com/bionic/g++-6 [2]: https://packages.ubuntu.com/bionic/g++-7 [3]: https://packages.ubuntu.com/bionic/g++-8 [4]: https://packages.ubuntu.com/bionic/clang-4.0 [5]: https://packages.ubuntu.com/bionic-updates/clang-7 [6]: https://packages.ubuntu.com/bionic-updates/clang-8 [7]: ttps://github.com/travis-ci/apt-source-safelist/issues/410 [8]: https://www.danielstender.com/blog/afl-ubuntu1804/ Github: related to #167 "switch all Python dependencies to Python 3 in packaging/debian" Github: related to #170 "optimise testing"
parent
2c02af9e
Please register or sign in to comment