Skip to content
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

Test macOS on CI #1752

Merged
merged 5 commits into from
Dec 1, 2023
Merged

Test macOS on CI #1752

merged 5 commits into from
Dec 1, 2023

Commits on Dec 1, 2023

  1. Add macOS test jobs to CI matrix

    This now tests on macOS in as well as Ubuntu and Windows.
    EliahKagan committed Dec 1, 2023
    Configuration menu
    Copy the full SHA
    2813e94 View commit details
    Browse the repository at this point in the history
  2. Use macOS 13 on CI

    "macos-latest" is currently macOS 12. Using macOS 13 may be faster.
    EliahKagan committed Dec 1, 2023
    Configuration menu
    Copy the full SHA
    789baa1 View commit details
    Browse the repository at this point in the history
  3. Temporarily break test_blocking_lock_file on Windows

    To compare how much extra wait time Windows and macOS usually need.
    EliahKagan committed Dec 1, 2023
    Configuration menu
    Copy the full SHA
    f6f335f View commit details
    Browse the repository at this point in the history
  4. Restore longer extra time for Windows, and add for macOS

    This undoes the testing breakage of test_blocking_lock_file for
    Windows, and gives macOS the same amount of extra time as Windows.
    
    I had expected that macOS, even though it needs more time than
    Ubuntu, might not need as much extra time as Windows. That turned
    out not to be the case, in the limited testing done so far on CI.
    Windows, while still slower than Ubuntu and still too slow to
    reliably pass the test_blocking_lock_file test, was usually faster
    than macOS and passed more often.
    
    These relative timings may turn out not to be a trend and only to
    apply to the current GHA runners. That's probably okay since the
    adjustment for macOS wasn't present before and is being added to
    allow newly introduced macOS CI test jobs to pass.
    
    That is all in regard to the very specific issue of the extra time
    required for the test_blocking_lock_file test after the lock, which
    makes an assertion about that not taking too long. Regarding the
    overall time of entire test jobs, macOS 13 seems to have usually
    been a little faster than macOS 12, so it is retained. Unlike
    "macos-latest", which currently is macOS 12, "macos-13" will never
    refer to a later version of the operating system, so the version
    given in the workflow should be revisited later, at or after the
    time "macos-latest" becomes a synonym of "macos-13".
    EliahKagan committed Dec 1, 2023
    Configuration menu
    Copy the full SHA
    c16e4f3 View commit details
    Browse the repository at this point in the history
  5. macOS needs even more extra time in test_blocking_lock_file

    As seen in:
    https://github.com/EliahKagan/GitPython/actions/runs/7056321920/attempts/1
    
    Usually an extra_time of 0.12 (6x) is sufficient for both Windows
    and macOS, but sometimes macOS needs even more, so this increases
    it to 0.18 (9x) for macOS.
    EliahKagan committed Dec 1, 2023
    Configuration menu
    Copy the full SHA
    d15f891 View commit details
    Browse the repository at this point in the history