Skip to content

ci: Remove Linux & macOS from Azure #29171

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Nov 27, 2024
Merged

ci: Remove Linux & macOS from Azure #29171

merged 3 commits into from
Nov 27, 2024

Conversation

QuLogic
Copy link
Member

@QuLogic QuLogic commented Nov 22, 2024

PR summary

After an audit of all CI, we don't believe we are gaining anything by duplicating GitHub Actions here.

PR checklist

@QuLogic QuLogic added the CI: testing CI configuration and testing label Nov 22, 2024
@QuLogic
Copy link
Member Author

QuLogic commented Nov 22, 2024

For the record, the system Linux packages explicitly installed on GitHub Actions, but not Azure are:

  • ccache
  • libcairo2-dev
  • libffi-dev
  • libgeos-dev
  • libgirepository1.0-dev
  • libsdl2-2.0-0
  • libxkbcommon-x11-0
  • libxcb-cursor0
  • libxcb-icccm4
  • libxcb-image0
  • libxcb-keysyms1
  • libxcb-randr0
  • libxcb-render-util0
  • libxcb-xinerama0
  • pkg-config
  • qtbase5-dev

and vice versa:

  • libgirepository-1.0-1
  • poppler-utils

On macOS, GitHub Actions has:

  • ghostscript
  • gobject-introspection
  • gtk4
  • font-noto-sans-cjk
  • inkscape

whereas for Azure its:

  • ffmpeg
  • imagemagick
  • mplayer
  • pkg-config
  • font-noto-sans-cjk-sc
  • xquartz

It also turns out that we never uploaded macOS coverage reports, so coverage is only down by 2 report from Linux. The coverage change shows that we lost:

  • pdftocairo
  • xpdf
  • pdftops

I think these would have all come from poppler-utils. I don't think we are missing any backends, specifically. Possibly on macOS, we may also want to add ffmpeg? But that's definitely caught by Linux builds.

@oscargus
Copy link
Member

Do we know if xquartz is installed on GitHub or if it actually wasn't needed for Azure? It seems like the GUI-tests does not complain at least?

Interesting that a bit of the "executable not available"-tests lost coverage. Probably not worthwhile to have separate pipeline for those, but one may expect the minimum version test to handle them? Or maybe they are skipped earlier in the process? Is it worthwhile to setup a "minimum requirements" test (unless that is actually included in minimum versions)?

@tacaswell
Copy link
Member

https://app.codecov.io/gh/matplotlib/matplotlib/pull/29171/blob/lib/matplotlib/backends/backend_pgf.py#L170

It looks like we support pdftocairo and gs for getting raster images out of pgf but always have pdftocairo installed so never test gs. If this is what was before, lets open an issue to look at it, if this is new can we get one job that uses ps (I have not chased things back, but I have a suspicion that pdftocairo is a system dependency of something we depend on for pgf).

Can we drop ffmpeg on the minimal deps run?

@QuLogic
Copy link
Member Author

QuLogic commented Nov 27, 2024

Do we know if xquartz is installed on GitHub or if it actually wasn't needed for Azure? It seems like the GUI-tests does not complain at least?

I think this may have been for GTK2. I don't recall if GTK3 used XQuartz, but GTK4 should be native. So I removed it and everything seems fine.

Interesting that a bit of the "executable not available"-tests lost coverage. Probably not worthwhile to have separate pipeline for those, but one may expect the minimum version test to handle them? Or maybe they are skipped earlier in the process? Is it worthwhile to setup a "minimum requirements" test (unless that is actually included in minimum versions)?

It looks like we support pdftocairo and gs for getting raster images out of pgf but always have pdftocairo installed so never test gs. If this is what was before, lets open an issue to look at it, if this is new can we get one job that uses ps (I have not chased things back, but I have a suspicion that pdftocairo is a system dependency of something we depend on for pgf).

These were from adding poppler-utils; I've left it out of the minimum versions build and now both of those code paths are touched.

Can we drop ffmpeg on the minimal deps run?

Yes, did that as well.

@tacaswell tacaswell added this to the v3.11.0 milestone Nov 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI: testing CI configuration and testing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants