Skip to content

Handle unavailable macOS version during backend selection - #114

Open
Neallin-917 wants to merge 1 commit into
arsenetar:masterfrom
Neallin-917:codex/fix-empty-macos-version
Open

Neallin-917 wants to merge 1 commit into
arsenetar:masterfrom
Neallin-917:codex/fix-empty-macos-version

Conversation

@Neallin-917

Copy link
Copy Markdown

Summary

  • treat an empty platform.mac_ver() result as an unknown macOS version and try the modern backend first
  • preserve the legacy backend for known pre-10.9 systems and as the existing fallback when the modern backend cannot be imported
  • add selector-level regression coverage without calling either trash implementation

Fixes #110.

Validation

  • python -m pytest tests/test_plat_mac.py -q — 6 passed
  • python -m flake8 . — passed
  • python -m pytest -q with an isolated HOME — 17 passed, 1 Windows-only module skipped
  • python -m build — sdist and wheel built successfully

The regression executes the real backend selector with platform.mac_ver and the native backend import boundaries controlled. It does not claim to reproduce the reporter's complete Homebrew/Jupyter environment. The full macOS suite only operated on generated test fixtures; no existing user files were read or trashed.

AI assistance

Codex assisted with implementation and verification. A separate Codex agent independently reviewed the backend-selection semantics and regression-test path. No human code review is claimed.

@Neallin-917

Copy link
Copy Markdown
Author

The CI workflows on the current head are still awaiting approval. When convenient, could a maintainer approve the runs so the upstream platform checks can execute? The local macOS results and their limitations are recorded above. Happy to address any findings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ValueError: invalid literal for int() on macOS - mac_ver() returns empty string causing Jupyter to fail on startup

2 participants