You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I will echo some other recent requests, but for Windows environments.
I was able to build the wheel for Python 3.14 on Windows AMD64, but it would be great to get that added to your normally published wheels. I also have a Windows ARM64 machine, which I haven't attempted to build on, but I could also use an officially published wheel there as well.
I suspect that since this project is an included dependency for omnigent, there will be a lot of demand for additional common platforms.
I used antigravity-cli to figure out how to get it to build, since I'm not familiar with bazel.
It used bazelisk to interact with bazel, rather than doing it directly.
It made some minor changes to the build files, some of them probably unnecessary. I'll just paste the diff for you
$ git diff
warning: in the working copy of 'MODULE.bazel', CRLF will be replaced by LF the next time Git touches it
diff --git a/.bazelrc b/.bazelrc
index a727ae9..a956f58 100644
--- a/.bazelrc
+++ b/.bazelrc
@@ -25,8 +25,8 @@ build --verbose_failures
test --test_output=errors
# GCS remote caching config (Windows-only, active by default on Windows!)
-build:windows --remote_cache=https://storage.googleapis.com/windows-cel-python-remote-cache
-build:windows --google_default_credentials=true
+# build:windows --remote_cache=https://storage.googleapis.com/windows-cel-python-remote-cache
+# build:windows --google_default_credentials=true
# GCS remote caching config (macOS-only, active by default on macOS!)
build:macos --remote_cache=https://storage.googleapis.com/macos-cel-python-remote-cache
diff --git a/MODULE.bazel b/MODULE.bazel
index 1ed9a28..e250b72 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -63,8 +63,8 @@ single_version_override(
# 'bazel test' to run all sandboxed test targets under the hermetic
# python.exe interpreter.
python = use_extension("@rules_python//python/extensions:python.bzl", "python")
-python.defaults(python_version = "3.11")
-python.toolchain(python_version = "3.11")
+python.defaults(python_version = "3.14")
+python.toolchain(python_version = "3.14")
use_repo(python, "pythons_hub")
register_toolchains("@pythons_hub//:all")
diff --git a/release/setup.py b/release/setup.py
index 1fec997..bfeeae9 100644
--- a/release/setup.py
+++ b/release/setup.py
@@ -34,10 +34,13 @@ class BazelExtension(setuptools.Extension):
class BazelBuild(setuptools.command.build_ext.build_ext):
"""Custom build_ext command to build extensions with bazel."""
+ def get_bazel_bin(self):
+ return os.environ.get('BAZEL_PATH') or shutil.which('bazelisk') or shutil.which('bazel')
+
def run(self):
# Ensure bazel is available
- if shutil.which('bazel') is None:
- raise RuntimeError('bazel must be installed to build the extensions.')
+ if self.get_bazel_bin() is None:
+ raise RuntimeError('bazel or bazelisk must be installed to build the extensions.')
for ext in self.extensions:
self.build_extension(ext)
@@ -70,7 +73,8 @@ class BazelBuild(setuptools.command.build_ext.build_ext):
# Build with bazel
# Use --compilation_mode=opt for release builds
- cmd = ['bazel', 'build', ext.target, '--compilation_mode=opt']
+ bazel_bin = self.get_bazel_bin()
+ cmd = [bazel_bin, 'build', ext.target, '--compilation_mode=opt']
if sys.platform == 'win32':
self.platform_config_windows(cmd, python_version)
if sys.platform == 'darwin':
@@ -119,8 +123,9 @@ class BazelBuild(setuptools.command.build_ext.build_ext):
cmd.insert(1, '--output_user_root=C:/tmp')
# 1. Get output base
+ bazel_bin = self.get_bazel_bin()
output_base = subprocess.check_output(
- ['bazel', '--output_user_root=C:/tmp', 'info', 'output_base'], text=True
+ [bazel_bin, '--output_user_root=C:/tmp', 'info', 'output_base'], text=True
).strip()
# 2. Find hermetic python directory
Activity
alexchandel commentedon Jun 21, 2026
Seems there are many missing wheel combos, beginning with #74.
alexchandel commentedon Jun 21, 2026
@zortness How did you build this for 3.14 on Windows x64?
zortness commentedon Jun 23, 2026
I used antigravity-cli to figure out how to get it to build, since I'm not familiar with bazel.
It used bazelisk to interact with bazel, rather than doing it directly.
It made some minor changes to the build files, some of them probably unnecessary. I'll just paste the diff for you
dmitriplotnikov commentedon Jun 25, 2026
Thank you for reporting, @zortness!
Windows AMD64 wheels for cp311...cp314 are included in release https://pypi.org/project/cel-expr-python/0.1.3/ Please let us know if you run into any issues with those wheels.