Feat: Add native Windows pip installation support with automated CI/CD #1369#1422
Closed
visheshrwl wants to merge 14 commits intogoogle-deepmind:masterfrom
Closed
Feat: Add native Windows pip installation support with automated CI/CD #1369#1422visheshrwl wants to merge 14 commits intogoogle-deepmind:masterfrom
visheshrwl wants to merge 14 commits intogoogle-deepmind:masterfrom
Conversation
- Add setup.py with cross-platform CMake extension building - Add pyproject.toml for modern Python packaging (PEP 517) - Add GitHub Actions CI for automated Windows wheel building (py3.10-3.13) - Add WINDOWS_INSTALL.md guide and test_installation.py validator - Transform complex manual Windows setup to simple 'pip install open-spiel' - Fix dynamic wheel selection in test_wheel.sh for all Python versions - Update README.md with Windows installation documentation - Set python_requires>=3.10 to match upstream Enables native Windows pip installation, eliminating 20+ manual setup steps Resolves google-deepmind#804
- Use cmake --build with MSVC on Windows instead of make - Add Windows compiler flags (/std:c++17 /utf-8 /bigobj) - Skip C++ compiler check on Windows (CMake handles it) - Keep Unix build path unchanged (clang++/make)
Upstream skips Python 3.13 testing on macos-15 due to a known issue in rcfr_pytorch_test.py with NumPy strict type checking in Python 3.13. Reverting to upstream behavior to keep PR focused on Windows pip support.
Restore upstream behavior where macOS Python 3.13 runner skips full tests since only Python 3.14 wheel is built. This matches the upstream workaround for Python 3.13 compatibility issues.
Changed hardcoded manylinux_2_17_x86_64 pattern to wildcard manylinux* to support both x86_64 and aarch64 (ARM64) wheel architectures.
feat: Add Windows pip installation support
lanctot
requested changes
Dec 27, 2025
Collaborator
lanctot
left a comment
There was a problem hiding this comment.
We already have a page for Windows instructions; instead of making a separate WINDOWS_INSTALL.md, can you move everything in it to a major section in docs/windows.md?
lanctot
requested changes
Dec 27, 2025
Collaborator
lanctot
left a comment
There was a problem hiding this comment.
Ok, going to hold on on any further comments because several substantial changes were made in #1418 and we should merge that first, and then you should update this PR. We'll probably only get to that in early January, so no rush.
Collaborator
|
Ok #1418 has been merged. Can you merge changes from master into your branch or rebase from current head? Note: there may be conflicts as they touched some of the same files. Let me know if you're not sure what you should do in any of the circumstances. |
Collaborator
|
Replaced by #1426 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tried to resolve #804
feat: Add Windows pip installation support
Add setup.py with CMake extension building and dependency auto-cloning
Add pyproject.toml for modern Python packaging
Add GitHub Actions CI/CD for automated wheel building
Add WINDOWS_INSTALL.md guide and test_installation.py validator
Transform complex manual Windows setup to simple 'pip install open-spiel'
Fix CMake configuration for proper pyspiel.pyd placement
Update README.md with Windows installation documentation
Enables native Windows pip installation, eliminating 20+ manual setup steps
#1369 @lanctot