Skip to content

Epic: pub.dev depth — dependency-graph wiring, dependent constraint rewriting, Flutter build numbers #547

Description

@goosewobbler

From the July 2026 direction review (§1.2). Dart is releasekit's least-contested ecosystem (nobody else combines versioning + release PR + GitHub Releases + OIDC publishing for Dart), but support has a correctness hole vs what melos users expect.

Scope

  • Wire pub into the dependency graph — packages/version/src/core/workspaceGraph.ts:8 says "pub: not yet wired (no edges) — deferred". Until fixed, prerequisite derivation and publish ordering silently ignore Dart packages.
  • Dependent constraint rewriting: pub has no workspace:* indirection at publish time — when package A bumps, dependents' pubspec.yaml constraints must be rewritten, preserving style (caret vs exact pin), across dependencies and dev_dependencies (melos's core value; currently a correctness hole for multi-package Dart repos).
  • Flutter +N build-number retention: preserve/increment build metadata across bumps (1.2.3+11 → 1.2.4+12).
  • Graduation cascade parity: match melos version --graduate semantics (strip prerelease → stable including dependents) within releasekit's channel model.

Later (separate issue when wanted)

A pre-publish pana score gate (the Very Good Workflows pattern) — no non-Dart tool will ever have this.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions