build: enable macOS CI, add Python 3.13, and stabilize Bazel configuration#60
Merged
aktech merged 5 commits intotensorflow:masterfrom Jan 23, 2026
Merged
build: enable macOS CI, add Python 3.13, and stabilize Bazel configuration#60aktech merged 5 commits intotensorflow:masterfrom
aktech merged 5 commits intotensorflow:masterfrom
Conversation
- Upgrade zlib from 1.2.12 to 1.3.1 for Apple Silicon compatibility - Add .gitignore for generated files and Bazel artifacts
- Add macOS runners to both test and wheel build workflows - Update Python version matrix to include 3.13
Pin setuptools<70 and build<2.0 to ensure PyPI-compatible Metadata 2.3 generation. Consolidate build artifact patterns in .gitignore.
- Downgrade Bazel from 7.6.1 to 6.5.0 for certificate handling stability - Add pre-build Bazel installation step with direct download (bypassing cert checks) - Install Bazel to ~/.local/bin and update PATH for consistent CI environment - Remove explicit PyPI repository URL (use default legacy endpoint) - Add Python 3.12 and 3.13 classifier support This ensures consistent Bazel availability across all CI runners (Linux/macOS) and improves compatibility with current PyPI publishing practices.
aktech
approved these changes
Jan 15, 2026
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.
Description
This PR enables cross-platform CI/CD support, adds Python 3.13 compatibility, and stabilizes the Bazel build environment with explicit configuration for consistent builds across all platforms.
Changes
CI/CD Infrastructure
Cross-Platform Workflows: Enable macOS testing and wheel building
test.ymlto run on bothubuntu-latestandmacos-latest(arm64)wheels.ymlto build wheels on both Ubuntu and macOS platformsBazel Build System Stabilization
~/.local/binwith--no-check-certificateflag for robustness.bazelrcconfiguration file for consistent C++ compilation--cxxoptand--host_cxxopt)-fno-strict-aliasingflag for compatibilityPython & Packaging
Python 3.13 Support
setup.pyclassifiers for new Python versionsBuild System Configuration
pyproject.tomlwith PEP 517 build system specificationsetuptools<70andbuild<2.0in build dependencies to ensure Metadata 2.3 compatibilityZlib Dependency Upgrade
fdopenmacro redefinition)Repository Hygiene
.gitignoreFilebazel-bin,bazel-metadata,bazel-out,bazel-testlogstensorflow_metadata/proto/v0/*_pb2.pybuild/,dist/,*.egg-info/PyPI Integration
repository-urlfrom publish step to use PyPI's default legacy endpointverify-metadata: falsedue to pkginfo/twine version constraints on runnersMotivation
Testing
pip install -e .andpytestshould work on both Ubuntu and macOSNotes
.bazelrcfile must be checked in for both local and CI builds to use consistent settingsUpload to PyPIjob passes. Refer, https://github.com/czgdp1807/metadata/actions/runs/20526757499/job/58971568319