1313# limitations under the License.
1414
1515# TODO(fchern): automate version string alignment with setup.py
16- VERSION = "0.6.0 "
16+ VERSION = "0.7.3 "
1717
1818module (
1919 name = "array_record" ,
@@ -22,31 +22,52 @@ module(
2222)
2323
2424bazel_dep (name = "rules_proto" , version = "7.0.2" )
25- bazel_dep (name = "rules_python" , version = "0.40 .0" )
25+ bazel_dep (name = "rules_python" , version = "0.37 .0" )
2626bazel_dep (name = "platforms" , version = "0.0.10" )
27- bazel_dep (name = "protobuf" , version = "24.4" ) # aligns with pygrain
27+ bazel_dep (name = "protobuf" , version = "28.3" )
2828bazel_dep (name = "googletest" , version = "1.15.2" )
2929bazel_dep (name = "abseil-cpp" , version = "20240722.0" )
3030bazel_dep (name = "abseil-py" , version = "2.1.0" )
3131bazel_dep (name = "eigen" , version = "3.4.0.bcr.3" )
3232bazel_dep (name = "riegeli" , version = "0.0.0-20241218-3385e3c" )
3333bazel_dep (name = "pybind11_bazel" , version = "2.12.0" )
3434
35- PYTHON_VERSION = "3.10"
35+ SUPPORTED_PYTHON_VERSIONS = [
36+ "3.10" ,
37+ "3.11" ,
38+ "3.12" ,
39+ "3.13" ,
40+ ]
41+
42+ DEFAULT_PYTHON_VERSION = "3.10"
43+
44+ python_configure = use_extension ("@pybind11_bazel//:python_configure.bzl" , "extension" )
45+ use_repo (python_configure , "local_config_python" )
3646
3747python = use_extension ("@rules_python//python/extensions:python.bzl" , "python" )
38- python .toolchain (
39- ignore_root_user_error = True , # Required for our containerized CI environments.
40- python_version = PYTHON_VERSION ,
41- )
48+
49+ [
50+ python .toolchain (
51+ ignore_root_user_error = True ,
52+ is_default = python_version == DEFAULT_PYTHON_VERSION ,
53+ python_version = python_version ,
54+ )
55+ for python_version in SUPPORTED_PYTHON_VERSIONS
56+ ]
57+
58+ use_repo (python , python = "python_versions" )
4259
4360pip = use_extension ("@rules_python//python/extensions:pip.bzl" , "pip" )
4461
4562# requirements_lock.txt is generated by
4663# bazel run //:requirements.update
47- pip .parse (
48- hub_name = "pypi" ,
49- python_version = PYTHON_VERSION ,
50- requirements_lock = "//:requirements_lock.txt" ,
51- )
64+ [
65+ pip .parse (
66+ hub_name = "pypi" ,
67+ python_version = version ,
68+ requirements_lock = "test_requirements_lock_" + version .replace ("." , "_" ) + ".txt" ,
69+ )
70+ for version in SUPPORTED_PYTHON_VERSIONS
71+ ]
72+
5273use_repo (pip , "pypi" )
0 commit comments