Skip to content

Commit 4e0e89e

Browse files
authored
[1/n] [dropshot-api-manager] redesign compatibility issue output
Based on the improvements in drift 0.2, redesign the way we display compatibility issues to show all the endpoints from which a component is accessible. This is a pretty major rework of the compatibility detection and display code, though I hope it's relatively straightforward. The output looks quite nice! Here's an example as of this PR: <img width="1606" height="636" alt="image" src="https://github.com/user-attachments/assets/f46ee2c1-c872-4e1f-8cd4-f5afd0bb6519" /> More improvements to this will come in subsequent PRs (split them up to make it easier to review.) Reviewers: david-crespo Reviewed By: david-crespo Pull Request: #95
1 parent d358fad commit 4e0e89e

29 files changed

Lines changed: 2271 additions & 772 deletions

AGENTS.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,11 @@ crates/
224224
│ │ ├── cmd/ # CLI commands (dispatch, check, generate, list, debug)
225225
│ │ ├── environment.rs # Environment configuration and resolution
226226
│ │ ├── resolved.rs # Resolution logic, VersionProblem / NonVersionProblem / Fix enums
227-
│ │ ├── compatibility.rs # Wire compatibility checking via drift
227+
│ │ ├── compatibility/ # Wire compatibility checking via drift
228+
│ │ │ ├── mod.rs # Module re-exports
229+
│ │ │ ├── types.rs # ApiCompatIssue and related data model
230+
│ │ │ ├── detect.rs # Bridge from drift output into the data model
231+
│ │ │ └── display.rs # Styled CLI rendering of compatibility issues
228232
│ │ ├── validation.rs # OpenAPI document validation
229233
│ │ ├── vcs/ # VCS abstraction (RepoVcs: Git/Jujutsu dispatch)
230234
│ │ │ ├── mod.rs # Module re-exports

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/dropshot-api-manager/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ thiserror.workspace = true
3838

3939
[dev-dependencies]
4040
assert_matches.workspace = true
41+
expectorate.workspace = true
4142

4243
[lints]
4344
workspace = true

0 commit comments

Comments
 (0)