Skip to content

Commit

Permalink
macOS continuous integration (CI).
Browse files Browse the repository at this point in the history
This commit expands our build matrix for CI testing to macOS as well as
increasing our timeout for CI jobs from five to ten minutes.
(*Emboldened bald herald!*)
  • Loading branch information
leycec committed Feb 14, 2021
1 parent 76a4457 commit 058ef6a
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 18 deletions.
24 changes: 7 additions & 17 deletions .github/workflows/python_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,16 +67,6 @@ jobs:
# ..................{ MATRIX }..................
strategy:
matrix:
#FIXME: If GitHub Actions either substantially increases our available
#CI minutes *OR* increases the speed of the Azure platform running our
#CI (which would effectively be the same as increasing our available
#minutes), enable:
#* macOS testing by adding "macos-latest" to this list. From the CLI
# perspective, macOS is mostly just Linux (don't crucify me here,
# people) with the POSIX-compliant GNU toolchain replaced with the
# POSIX-compliant BSD toolchain. In either case, however, macOS and
# Linux are both POSIX-compliant and thus crudely comparable.

# List of all platform-specific Docker images to test against,
# including:
# * The latest Long-Term Service (LTS) release of Ubuntu Linux, still
Expand All @@ -85,12 +75,12 @@ jobs:
# and macOS are both POSIX-compliant and thus crudely comparable from
# the low-level CLI perspective, Windows is POSIX-noncompliant and
# thus heavily divergent from both macOS and Linux.
#
# Ergo, we willingly pay for Windows but *NOT* macOS CI minutes.
# Ideally, we'd pay for both. Pragmatically, we can't. We instead pay
# for the platform that is most divergent and thus the most likely
# to catastrophically collapse in the final mile. This means Windows.
platform: [ubuntu-latest, windows-latest]
# * The latest *whatever* release of Apple macOS. We don't particularly
# need to exercise tests on macOS, given the platform's patent
# POSIX-compliant low-level similarities to Linux, but... what the
# heck. Why not? Since this is the lowest priority, we defer macOS
# testing until last.
platform: [ubuntu-latest, windows-latest, macos-latest]

#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# WARNING: Changes to this section *MUST* be manually synchronized with:
Expand Down Expand Up @@ -129,7 +119,7 @@ jobs:
# Time in minutes to wait on the command pipeline run below to exit
# *BEFORE* sending a non-graceful termination request (i.e., "SIGTERM"
# under POSIX-compliant systems).
timeout-minutes: 5
timeout-minutes: 10

# ..................{ VARIABLES }..................
# External shell environment variables exposed to commands run below.
Expand Down
2 changes: 1 addition & 1 deletion beartype/_util/func/utilfuncorigin.py
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ def get_callable_origin_label(func: Callable) -> str:
# yet again. For inexplicable reasons, PyPy provides *ALL* C-based
# builtins (e.g., len()) with code objects failing to provide this
# metadata. Yes, this is awful. Yes, this is the Python ecosystem.
if func_codeobj is not None:
if func_codeobj:
func_origin_label = getattr(
func_codeobj, 'co_filename', func_origin_label)
# Else...
Expand Down

0 comments on commit 058ef6a

Please sign in to comment.