Repository navigation
Decide target_map renames in one place, and list renamed exclusions - #38
Merged
anakanemison merged 1 commit intoNov 9, 2026
Conversation
anakanemison
force-pushed
the
mschaller/u03-target-map-renames-one-place
branch
from
October 26, 2026 13:30
382692e to
81b1ee5
Compare
armandomontanez
approved these changes
Oct 28, 2026
exclude_targets holds CMake names. The diff applies target_map before deciding participation, so a Bazel target mapped to an excluded CMake name is skipped. excluded_summary, which reports what was skipped and why, checked the raw Bazel label instead, so that target appeared nowhere in `excluded.bazel`: skipped, but not on the record. A new helper, _bazel_renames, returns each Bazel label with the name the diff compares it under (today, the target_map entries whose label exists), and is the one place that decision is made. diff_models renames the Bazel views with it and, as before, also applies every explicit target_map entry to dependency references (a map entry can align an external dependency that has no target node). excluded_summary checks exclusion on the renamed name while still listing the target under its Bazel label. The per-side summaries later in this series use the same helper, so they count exactly the targets the diff compares. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
anakanemison
force-pushed
the
mschaller/u03-target-map-renames-one-place
branch
from
November 2, 2026 17:50
81b1ee5 to
57aed8b
Compare
anakanemison
added a commit
that referenced
this pull request
Nov 9, 2026
When one source compiles into several libraries with different flags, the differ compared only one variant per side, and which one depended on set iteration order, that is, on `PYTHONHASHSEED`. Pooling now keeps every variant, visits targets in sorted order, and compares each CMake variant with its best-matching Bazel variant (fewest errors, then warnings, then the smallest difference, then a stable order). A source with one variant per side takes the old path unchanged. In any2bazel-lab, the same MySQL Server models gave 4,715 to 4,817 errors over 10 seeds, and a Blender migration's final models converged under 2 of 8. With this change, a later QGIS run's verdict was the same under three seeds. A `source_map` token that collapses several CMake TUs now yields one comparison per distinct TU, so the worklist can grow. Stacked on #38 (tracking issue: #35). `pytest tests/`: 140 passed (132 on `main`). Lab proposal: P14. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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.
A Bazel target mapped through
target_mapto an excluded CMake name was skipped by the diff but missing fromexcluded.bazel, because the summary checked the raw label. A new helper,_bazel_renames, makes the rename decision once; the diff andexcluded_summaryboth use it, and the per-side summaries later in this series are built on it.Stacked on #37 (tracking issue: #35).
pytest tests/: 134 passed (132 onmain). Lab proposal: support for P17.🤖 Generated with Claude Code