Skip to content

Commit

Permalink
CI: Further simplify the matrix
Browse files Browse the repository at this point in the history
We want to eventually re-introduce all of those tests,
but we need to do it gradually, so reducing the targeted
compilers as well as the OS makes sense.
  • Loading branch information
Geod24 committed Oct 3, 2023
1 parent 635588f commit 40b7918
Showing 1 changed file with 0 additions and 64 deletions.
64 changes: 0 additions & 64 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,86 +35,22 @@ jobs:
fail-fast: false
matrix:
os:
# - macOS-11
- ubuntu-20.04
# - windows-2019
dc:
- ldc-latest
target:
# Versions of clang earlier than 11 are not available on 20.04, but are on macOS-11
- clang-13.0.0
- clang-12.0.0
- clang-11.0.0
- clang-10.0.0
- clang-9.0.0
- clang-8.0.0
# For g++, we test the oldest compiler on Ubuntu 20.04, which is GCC-9
- g++-11
- g++-10
- g++-9
# Finally, we test MSVC 2013 - 2019
- msvc-2019
- msvc-2017
- msvc-2015
- msvc-2013

# Exclude target compilers not supported by the host
# Note: Pattern matching is not supported so this list is quite long,
# and brittle, as changing an msvc entry would break on OSX, for example.
exclude:
# 20.04 only has g++-9 through to 11, and clang-11.0.0 through to 13.0.0
- { os: ubuntu-20.04, target: clang-10.0.0 }
- { os: ubuntu-20.04, target: clang-9.0.0 }
- { os: ubuntu-20.04, target: clang-8.0.0 }
# OSX only supports clang
- { os: macOS-11, target: g++-11 }
- { os: macOS-11, target: g++-10 }
- { os: macOS-11, target: g++-9 }
- { os: macOS-11, target: msvc-2019 }
- { os: macOS-11, target: msvc-2017 }
- { os: macOS-11, target: msvc-2015 }
- { os: macOS-11, target: msvc-2013 }
# We don't test g++ on Windows as DMD only mangles for MSVC
- { os: windows-2019, target: g++-11 }
- { os: windows-2019, target: g++-10 }
- { os: windows-2019, target: g++-9 }

# TODO: Implement support for clang and MSVC2017 on Windows
# Currently those are still being run by the auto-tester
# We can hardly test below 2017 in the CI because there's
# no way to install it via command line
# (TODO: Test with 2015 as the blog post is slightly ambiguous)
# https://devblogs.microsoft.com/cppblog/introducing-the-visual-studio-build-tools/
- { os: windows-2019, target: msvc-2017 }
- { os: windows-2019, target: msvc-2015 }
- { os: windows-2019, target: msvc-2013 }
- { os: windows-2019, target: clang-13.0.0 }
- { os: windows-2019, target: clang-12.0.0 }
- { os: windows-2019, target: clang-11.0.0 }
- { os: windows-2019, target: clang-10.0.0 }
- { os: windows-2019, target: clang-9.0.0 }
- { os: windows-2019, target: clang-8.0.0 }

# This sets the configuration for each jobs
# There's a bit of duplication involved (e.g. breaking down g++-9.3 into 2 strings),
# but some items are unique (e.g. clang-9.0.0 and 4.0.1 have differences in their naming).
include:
# Clang boilerplate
- { target: clang-13.0.0, compiler: clang, cxx-version: 13.0.0 }
- { target: clang-12.0.0, compiler: clang, cxx-version: 12.0.0 }
- { target: clang-11.0.0, compiler: clang, cxx-version: 11.0.0 }
- { target: clang-10.0.0, compiler: clang, cxx-version: 10.0.0 }
- { target: clang-9.0.0, compiler: clang, cxx-version: 9.0.0 }
- { target: clang-8.0.0, compiler: clang, cxx-version: 8.0.0 }
# g++ boilerplace
- { target: g++-11, compiler: g++, cxx-version: 11.2.0, major: 11 }
- { target: g++-10, compiler: g++, cxx-version: 10.3.0, major: 10 }
- { target: g++-9, compiler: g++, cxx-version: 9.4.0, major: 9 }
# Platform boilerplate
- { os: ubuntu-20.04, arch: x86_64-linux-gnu-ubuntu-20.04 }
- { os: macOS-11, arch: x86_64-apple-darwin }
# Clang 9.0.0 have a different arch for OSX
- { os: macOS-11, target: clang-9.0.0, arch: x86_64-darwin-apple }

# Using a specific version for reproductibility.
# Feel free to update when a new release has matured.
Expand Down

0 comments on commit 40b7918

Please sign in to comment.