Skip to content

Package repo tooling pathifying doesn't handle major versions correctly #121246

@stuartmorgan-g

Description

@stuartmorgan-g

Currently make-deps-path-based has logic to exclude things when the changed package is a major version bump, but that's not sufficient; what we actually need is to evaluate the major version of each target package against the pre-existing reference in each referencing package, and exclude when those major differences are different.

This had never come up because we don't tend to leave major version gaps in our own cross-package references, but now that we've combined flutter/plugins into flutter/packages we're hitting this with pigeon, because there's no ecosystem driver for keeping our usages of pigeon on the latest version. So in a recent PR I updated pigeon from 9.0.0 to 9.0.1, and pathified analysis broke for a plugin that was still on pigeon 4.x, since changing that reference crosses a breaking change boundary even though the PR itself wasn't making a breaking change.

For now I'm going to exclude pigeon from the command as a workaround, since it's by far the most likely place for us to encounter this, but we should fix the tooling in general.

Metadata

Metadata

Labels

P2Important issues not at the top of the work listc: contributor-productivityTeam-specific productivity, code health, technical debt.p: toolingAffects the flutter_plugin_tools packagepackageflutter/packages repository. See also p: labels.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions