Skip to content

Commit 30b4a71

Browse files
linesightclaude
andcommitted
macos: fix CI tests, build.py runtime/codesign, and gitignore
Tests (main_test.py, osr_test.py): Chrome 130+ registers MachPortRendezvousServer via bootstrap_check_in, which requires a pre-declared launchd service. Without an app bundle CFBundleIdentifier is empty, so the service name becomes ".MachPortRendezvousServer.<pid>", bootstrap_check_in returns BOOTSTRAP_UNKNOWN_SERVICE, and every spawned renderer subprocess crashes on startup. Adding --in-process-renderer makes the renderer run as a thread in the browser process — MachPortRendezvousClient is never called, bypassing the Mach rendezvous path entirely. The data-URI test pages do not need a working network service. build.py: - Add LINUX/MAC platform constants (previously only WINDOWS existed). - Fix CEF runtime detection: was Linux-only (checked for libcef.so, globbed cef*_linux64); add elif MAC branch that checks for "Chromium Embedded Framework.framework" and globs cef*_mac*. - Fix _copy_cef_runtime: use copytree(symlinks=True) so .framework symlinks (e.g. Headers -> Versions/A/Headers) are preserved instead of being dereferenced and duplicated. - Add _codesign_macos(): ad-hoc signs subprocess and cefpython_py*.so after each dev build; the CEF framework is left untouched since it already carries the CEF project's signature. .gitignore: Add cefpython3/chrome_crashpad_handler and cefpython3/Chromium Embedded Framework.framework/ — both are copied from cef*_macarm64/bin/ by _copy_cef_runtime and were previously unignored on macOS dev builds. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent c983050 commit 30b4a71

4 files changed

Lines changed: 243 additions & 201 deletions

File tree

.gitignore

Lines changed: 37 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,37 @@
1-
.idea/
2-
build/
3-
dist/
4-
cefpython3/*.pyd
5-
cefpython3/*.dll
6-
cefpython3/*.exe
7-
cefpython3/*.so
8-
cefpython3/*.so.*
9-
cefpython3/subprocess
10-
cefpython3/*.pak
11-
cefpython3/*.dat
12-
cefpython3/*.bin
13-
cefpython3/*.json
14-
cefpython3/locales/
15-
_cmake_test/
16-
_skbuild/
17-
venv/
18-
*.log
19-
__pycache__/
20-
*.pyc
21-
cefclient
22-
webcache/
23-
examples/screenshot.png
24-
examples/pyinstaller/build/
25-
examples/pyinstaller/dist/
26-
examples/GPUCache/
27-
examples/blob_storage/
28-
examples/webrtc_event_logs/
29-
unittests/GPUCache/
30-
unittests/blob_storage/
31-
unittests/webrtc_event_logs/
32-
.DS_Store
33-
MediaDeviceSalts
34-
MediaDeviceSalts-journal
35-
.claude/
1+
.idea/
2+
build/
3+
dist/
4+
cefpython3/*.pyd
5+
cefpython3/*.dll
6+
cefpython3/*.exe
7+
cefpython3/*.so
8+
cefpython3/*.so.*
9+
cefpython3/subprocess
10+
cefpython3/chrome_crashpad_handler
11+
cefpython3/Chromium Embedded Framework.framework/
12+
cefpython3/*.pak
13+
cefpython3/*.dat
14+
cefpython3/*.bin
15+
cefpython3/*.json
16+
cefpython3/locales/
17+
_cmake_test/
18+
_skbuild/
19+
venv/
20+
*.log
21+
__pycache__/
22+
*.pyc
23+
cefclient
24+
webcache/
25+
examples/screenshot.png
26+
examples/pyinstaller/build/
27+
examples/pyinstaller/dist/
28+
examples/GPUCache/
29+
examples/blob_storage/
30+
examples/webrtc_event_logs/
31+
unittests/GPUCache/
32+
unittests/blob_storage/
33+
unittests/webrtc_event_logs/
34+
.DS_Store
35+
MediaDeviceSalts
36+
MediaDeviceSalts-journal
37+
.claude/

0 commit comments

Comments
 (0)