Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
50fcdb8
Add macos-latest to versions matrix
RamSaw Mar 20, 2026
ce22dc6
Fix wheel architecture for MacOS and ignore .venv
RamSaw Mar 20, 2026
f315799
Install cmake in prereqs_mac.sh
RamSaw Mar 20, 2026
dd4fcca
Add missing Abseil logging libraries for macOS dynamic linkage
RamSaw Mar 20, 2026
83d9db8
Add remaining missing Abseil logging components (kSignedCharNull fix)…
RamSaw Mar 20, 2026
168d438
Enforce native arm64 linking and macOS 14.0 deployment target for pyt…
RamSaw Mar 20, 2026
d71bfe0
Force deployment target 15.0 and explicitly disable universal2 cross-…
RamSaw Mar 20, 2026
0a0b8da
Temporarily narrow CI matrix to macos-latest and python 3.13 for fast…
RamSaw Mar 20, 2026
c6f2532
Force macOS static linker to load all google_dp and abseil archive me…
RamSaw Mar 20, 2026
a0c0ed2
Relocate C++ compilation step chronologically after poetry installati…
RamSaw Mar 20, 2026
1dc0ec5
Fix tests.yml legacy C++ execution ordering and upgrade broken clang-…
RamSaw Mar 20, 2026
5ecca7d
tmp: disable irrelevant workflows to accelerate CI feedback
RamSaw Mar 20, 2026
cc38bec
chore(cmake): explicitly link absl::strings_internal to prevent macOS…
RamSaw Mar 20, 2026
4e90804
chore(cmake): escalate -all_load directly into Apple global MODULE li…
RamSaw Mar 20, 2026
aa60b1c
Revert "tmp: disable irrelevant workflows to accelerate CI feedback"
RamSaw Mar 20, 2026
ec5c9d7
chore(cmake): force explicit linkage of missing absl internal librari…
RamSaw Mar 20, 2026
cbed7c3
chore(ci): completely disable tests.yml execution triggers on Pull Re…
RamSaw Mar 20, 2026
4eb3d0e
fix(cmake): seamlessly integrate Apple -all_load into local target sc…
RamSaw Mar 20, 2026
728dd4f
fix(cmake/macos): seamlessly target MacOS specific dynamic link evalu…
RamSaw Mar 20, 2026
92ad66e
fix(cmake): seamlessly implement absolute cross-platform Apple ld who…
RamSaw Mar 20, 2026
958ae70
fix(macOS): annihilate Apple ld dynamic lookup ABI stripping by destr…
RamSaw Mar 20, 2026
913f7ed
test(macOS): perfectly align CI environment natively with user local …
RamSaw Mar 20, 2026
ee78236
chore: clean up deprecation warnings in C++ APIs by accurately target…
RamSaw Mar 20, 2026
db6910f
chore: minimize PR changes, isolating macOS fix purely to CI protobuf…
RamSaw Mar 20, 2026
4c0341a
chore: aggressively scope down PR per review: revert all YML adjustme…
RamSaw Mar 20, 2026
84b708f
Merge branch 'dev' into fix_mac_os_build
RamSaw Mar 20, 2026
94d5ce2
chore: synchronize macOS CI pipeline mitigations across to publish wo…
RamSaw Mar 20, 2026
576b878
Merge upstream/dev, resolve publish.yml conflict by mirroring version…
RamSaw Mar 20, 2026
64b29b8
chore: revert publish.yml entirely to upstream/dev to split into sepa…
RamSaw Mar 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 8 additions & 11 deletions .github/workflows/versions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ jobs:
matrix:
python-version: ["3.10"]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install python dependencies
Expand All @@ -53,16 +53,16 @@ jobs:
max-parallel: 12
matrix:
# TODO: fix for Mac and Windows.
os: [ubuntu-latest]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
os: [ubuntu-latest, macos-latest]
python-version: ["3.11", "3.12", "3.13", "3.14"]

steps:
- uses: actions/checkout@v4
with:
submodules: true

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

Expand All @@ -71,10 +71,6 @@ jobs:
run: |
sudo apt-get update
sudo apt-get install -y protobuf-compiler libprotobuf-dev
- name: Install Protobuf Compiler Mac
if: runner.os == 'macOS'
run: |
brew install protobuf

- name: Install Protobuf Compiler Windows
if: runner.os == 'Windows'
Expand All @@ -90,6 +86,7 @@ jobs:
echo "$destinationFolder\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append

- name: Verify protoc installation
if: runner.os != 'macOS'
run: protoc --version

- name: Download proto header Windows
Expand Down Expand Up @@ -134,7 +131,7 @@ jobs:
- name: Get poetry cache dir
id: poetry-cache
run: |
echo "::set-output name=dir::$(poetry config cache-dir)"
echo "dir=$(poetry config cache-dir)" >> $GITHUB_OUTPUT

- name: poetry cache
uses: actions/cache@v4
Expand All @@ -152,7 +149,7 @@ jobs:
- name: Build PyDP macOS
if: runner.os == 'macOS'
run: |
poetry run python setup.py build bdist_wheel --plat-name macosx_10_14_x86_64
poetry run python setup.py build bdist_wheel

- name: Build PyDP Linux / Windows
if: runner.os != 'macOS'
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,4 @@ coverage_report/*
!coverage_report/index.html

.python-version
.venv/
8 changes: 8 additions & 0 deletions prereqs_mac.sh
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,14 @@ else
brew install clang-format
fi

# cmake
if command -v cmake &>/dev/null; then
echo "cmake already installed"
else
echo "installing cmake"
brew install cmake
fi

# poetry
echo "Checking for poetry"
if python3 -c "import poetry" &> /dev/null; then
Expand Down
2 changes: 1 addition & 1 deletion src/bindings/PyDP/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -54,5 +54,5 @@ target_link_libraries(_pydp PUBLIC dp_algorithms dp_protos
)

if(NOT WIN32)
target_compile_options(_pydp PRIVATE -Wno-deprecated-declarations -Wdeprecated-declarations)
target_compile_options(_pydp PRIVATE -Wdeprecated-declarations)
endif()
Loading