Skip to content

Bazel 8 upgrade#855

Draft
lolski wants to merge 35 commits intomasterfrom
bazel-8-upgrade
Draft

Bazel 8 upgrade#855
lolski wants to merge 35 commits intomasterfrom
bazel-8-upgrade

Conversation

@lolski
Copy link
Copy Markdown
Member

@lolski lolski commented Mar 25, 2026

Usage and product changes

Implementation

lolski and others added 30 commits February 4, 2026 18:29
Migrate typedb-driver from WORKSPACE-based Bazel 6.2.0 to Bzlmod with
Bazel 8.0.0. All core driver components build successfully: Rust, C FFI,
Java, Python (multi-version 3.9-3.13), and TypeScript HTTP.

Key changes:
- Create MODULE.bazel with full Bzlmod configuration
- Empty WORKSPACE (kept for backward compatibility)
- Update Python toolchain references (@python39 → @python_3_9)
- Fix empty glob patterns with allow_empty = True
- Fix load paths for bazel-distribution docs subpackages
- Add --noincompatible_disallow_empty_glob workaround in .bazelrc

Excluded from default build (2.x only):
- C# (csharp/) - rules_dotnet limited Bzlmod support
- Node.js gRPC (nodejs/) - deprecated
- C++ (cpp/) - 2.x only

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add TypeDB server artifacts (release 3.0.0) to MODULE.bazel
- Change default Python version to 3.11 (matches typedb_bazel_distribution)
- Add npm_typescript import from rules_ts extension
- Add tsup bins config for http-ts npm dependencies
- Fix http-ts/BUILD to use directory_path for tsup entry point
- Update migration status with current build results

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
--slurpfile wraps JSON content in an array, so $stamp.STABLE_VERSION
must be accessed as $stamp[0].STABLE_VERSION.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
typedoc 0.28.7 is an ESM-only package and cannot be loaded via
require(). Switch the typedoc runner from CommonJS to ES2022 module
output, update the import syntax to ESM, and include package.json
in the js_binary data so Node.js recognises "type": "module" in
the Bazel sandbox.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The previous commit switched to ESM imports but the Bazel sandbox
lacks the package.json with "type": "module", so tsc still treated
the .ts file as CommonJS. Renaming to .mts forces ESM treatment
regardless of package.json, producing .mjs output that Node.js
always runs as ESM.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…or SSH debugging

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
lolski and others added 5 commits March 26, 2026 15:39
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bzlmod changes the runfiles layout: external repos are at the runfiles
root as `<repo>+/` instead of under `_main/external/<repo>/`. Updated
all Java CucumberOptions feature paths accordingly.

Also fixed doxygen doxyfile.template label in bazel-distribution.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sphinx on Python 3.11 no longer generates "An enumeration." for enum
classes. Updated 3 affected docs files to match the new output so
the build-docs CI diff check passes.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…behaviour commits

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant