rename: TopologyGraph -> BRepGraph, bump OCCTSwift floor to 1.15.0#79
Merged
Conversation
OCCTSwift v1.15.0 (SecondMouseAU/OCCTSwift#335) renamed the Swift wrapper class TopologyGraph -> BRepGraph to match the C++ package it wraps, leaving a deprecated typealias for compatibility. This repo built against the deprecated name; migrate every real reference (Sources, doc code samples, CLAUDE.md) onto BRepGraph directly. The OCCTSwift dependency floor moves 1.12.9 -> 1.15.0: the bare BRepGraph symbol does not exist before that release, so an open `from:` range alone isn't enough once the deprecated alias is dropped from our own code. Package.resolved is refreshed accordingly (occtswift 1.8.0 -> 1.15.0; the rest of the cohort floats up within their existing open floors). Left the "Topology graph" CLI-verb-family name (docs/reference/topology-graph.md, docs/guides/cookbook/topology-graph.md, and prose describing the graph-validate/compact/dedup/query/ml/select verb group) untouched -- that's this repo's own product terminology for a command family, not the OCCTSwift class name, and docs/reference/introspection.md already demonstrates the two coexisting ("Topology graph family" / "BRepGraph output") pre-rename. Closes #78 Co-Authored-By: Claude Sonnet 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.
Summary
OCCTSwift renamed its Swift wrapper class
TopologyGraph->BRepGraphtomatch the C++ package it wraps (SecondMouseAU/OCCTSwift#335, shipped in
v1.15.0),
leaving a deprecated typealias so downstream consumers keep compiling with
a warning. Tracked here as #78.
This PR does the mechanical migration:
OCCTSwift floor bumped 1.12.9 -> 1.15.0 (
Package.swift). The bareBRepGraphsymbol doesn't exist before 1.15.0 (only the deprecatedTopologyGraphtypealias does, and only from that release forward), soonce our own code stops using the deprecated name the floor has to
guarantee the new symbol is actually present — the previous open
from: "1.12.9"range technically permitted 1.15.0 but didn't require it.Package.resolvedrefreshed accordingly (occtswift 1.8.0 -> 1.15.0; therest of the cohort floats up within their existing open floors: AIS 1.0.5,
IO 1.0.2, Mesh 1.1.6, Tools 1.3.1, Viewport 1.1.24 — no manifest changes
needed for those, already-open ranges).
TopologyGraph->BRepGraphacross every real reference (re-greppedthe whole tree rather than trusting the tracking issue's file list
verbatim, which turned up a few more spots than originally filed):
Sources/ScriptHarness/BREPGraphJSONExporter.swiftSources/ScriptHarness/BREPGraphSQLiteExporter.swiftSources/ScriptHarness/GraphIO.swiftSources/ScriptHarness/ScriptContext.swiftSources/occtkit/Commands/GraphSelect.swiftSources/occtkit/Commands/GraphML.swiftSources/GraphML/main.swiftPackage.swift(comment)CLAUDE.md(dependency-floor writeup + a Key Conventions bullet)README.md(Requirements table floor bump)docs/guides/architecture.mddocs/reference/topology-graph.md,docs/reference/script-harness.md,docs/reference/ScriptHarness.md,docs/reference/occtkit-verbs.mddocs/guides/cookbook/topology-graph.mdLeft the "Topology graph" CLI-verb-family name untouched (page titles,
topology-graph.mdfilenames, thegraph-validate/compact/dedup/query/ml/selectverb-group prose) — that's this repo's own productterminology for a command family, distinct from the OCCTSwift class name.
docs/reference/introspection.mdalready shows the two coexisting("Topology graph family" alongside "BRepGraph output") from before this
PR, which is the pattern followed here. Pure identifier rename otherwise —
no behavior change.
Pairs with OCCTSwift#335 / v1.15.0.
Test plan
swift package resolve(after deletingPackage.resolved) — resolvesOCCTSwift at 1.15.0
swift build— clean, 0 errors, 0 warningsswift build --build-tests— clean, 0 errors, 0 warningsswift test— 3/3 tests pass (DrawingComposerTests; this repo has nodedicated test target over
ScriptHarness/graph exporters, perCLAUDE.md's "No tests exist" note for that area)recipes/01-mounting-bracket/output.brep:occtkit graph-validate,occtkit graph-select --query face-adjacency,occtkit graph-ml, and the standaloneGraphMLtarget all run andproduce correct output against the rebuilt
BRepGraphpathVersion
Latest tag is
v1.4.6. This repo's own convention (per its release history)treats floor bumps that are required by an actual API/behavior change as
minor bumps (e.g. v1.1.0 for the OCCTSwift 1.7.1 floor), reserving patch
bumps for same-API crash-fix repins (v1.4.3-v1.4.6). Since this floor bump is
required by the renamed symbol rather than being a drop-in crash fix, I'd
suggest v1.5.0 as the next tag — but leaving the tag/release itself to
the maintainer, per usual.
Closes #78
🤖 Generated with Claude Code