Skip to content

Rework project structure#201

Open
Bencodes wants to merge 9 commits into
masterfrom
rework-project-structure
Open

Rework project structure#201
Bencodes wants to merge 9 commits into
masterfrom
rework-project-structure

Conversation

@Bencodes

@Bencodes Bencodes commented Mar 6, 2026

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings March 6, 2026 03:42

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR reorganizes the repository to support a more “ruleset-style” Bazel project layout: standardized bazelrc presets, module/package metadata, updated CI/release automation, and an e2e smoke workspace for BCR-style verification.

Changes:

  • Add generated Bazelrc presets and update local/CI Bazel configuration to consume them.
  • Introduce BCR publishing/release automation (including docs artifact generation) plus an e2e/smoke test module.
  • Add contributor tooling/config (pre-commit, typos, renovate, devcontainer) and module/package metadata wiring.

Reviewed changes

Copilot reviewed 33 out of 38 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tools/preset.bazelrc Adds generated bazelrc preset flags to be imported by .bazelrc.
tools/BUILD.bazel Adds target intended to generate/update the preset bazelrc.
tests/analysis/tests.bzl Updates analysis test expectations for action count.
renovate.json Adds Renovate configuration for dependency automation.
e2e/smoke/WORKSPACE.bzlmod Adds bzlmod replacement stub for WORKSPACE mode.
e2e/smoke/WORKSPACE.bazel Adds WORKSPACE-based install snippet used by releases and smoke testing.
e2e/smoke/README.md Documents the purpose of the smoke test workspace.
e2e/smoke/MODULE.bazel.lock Adds lockfile for the smoke test module.
e2e/smoke/MODULE.bazel Adds a bzlmod-based smoke test module with local override to repo root.
e2e/smoke/BUILD Adds a minimal build_test-based smoke check.
e2e/smoke/.bazelrc Adds per-workspace Bazelrc file (currently empty).
REPO.bazel Adds repo-wide metadata defaults (default package metadata).
README.md Updates release download URL pattern, fixes typo, and adds contributing/releases sections.
MODULE.bazel.lock Updates root module lockfile.
MODULE.bazel Reworks module deps; adds package_metadata/platforms; documents leaving version unset; adds bazelrc-preset dep.
CONTRIBUTING.md Adds contributor workflow documentation (pre-commit, overrides, releasing).
BUILD.bazel Adds package metadata + license declarations at repo root.
.typos.toml Adds typos tool configuration stub.
.pre-commit-config.yaml Adds pre-commit hooks for formatting/linting/spellcheck.
.gitignore Updates ignore patterns for Bazel outputs and user bazelrc.
.github/workflows/release_prep.sh Updates release prep script; adds generated docs archive and prints install snippets.
.github/workflows/release.yml Removes old release workflow file.
.github/workflows/release.yaml Adds updated release workflow and wires in publish workflow.
.github/workflows/publish.yaml Adds publish-to-BCR workflow wiring.
.github/workflows/main.yml Removes legacy CI workflow.
.github/workflows/ci.yaml Adds new CI workflow using bazel-contrib reusable workflow plus pre-commit.
.github/workflows/ci.bazelrc Simplifies CI bazelrc to primarily enable the ci config and disk cache.
.github/workflows/buildifier.yaml Adjusts shellcheck step and normalizes step naming/commands.
.github/dependabot.yml Removes Dependabot configuration (superseded by Renovate).
.gitattributes Configures git archive to exclude tests from release artifacts.
.devcontainer/devcontainer.json Adds devcontainer configuration (extensions + pre-commit install).
.devcontainer/Dockerfile Adds devcontainer image with bazelisk + pre-commit dependencies.
.bcr/source.template.json Updates BCR source template (adds docs_url; modifies integrity placeholder).
.bcr/presubmit.yml Switches to bcr_test_module presubmit using the e2e/smoke module.
.bcr/config.yml Removes previous fixedReleaser config.
.bcr/README.md Documents the purpose of .bcr/ configuration.
.bazelrc Imports preset bazelrc and adds lockfile enforcement and user override import.
.bazelignore Ignores e2e/ from the root workspace.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread tools/BUILD.bazel
@@ -0,0 +1,6 @@
load("@bazelrc-preset.bzl", "bazelrc_preset")

Copilot AI Mar 6, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

load() labels must include a file label (e.g. @repo//path:file.bzl). load("@bazelrc-preset.bzl", ...) is not a valid Bazel label and will fail to parse. Update this to load bazelrc_preset from the actual .bzl file within the bazelrc-preset.bzl repository (per that module’s docs).

Copilot uses AI. Check for mistakes.
Comment thread tools/preset.bazelrc
Comment on lines +5 to +6
# On CI, announce all announces command options read from the bazelrc file(s) when starting up at the
# beginning of each Bazel invocation. This is very useful on CI to be able to inspect which flags

Copilot AI Mar 6, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grammar in this generated comment is off: it currently says “announce all announces command options…”, which is redundant/confusing. Consider updating the generator (or patching the generated file) so it reads “announce all command options…”

Copilot uses AI. Check for mistakes.
@Bencodes Bencodes force-pushed the rework-project-structure branch from d3cc5d7 to 2f078b3 Compare March 9, 2026 23:11
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.

2 participants