Dart
Dart pub workspace support and pub.dev publishing.
The Dart plugin discovers official pub workspace members from pubspec.yaml, bumps versions, updates workspace dependency ranges, and publishes with dart pub publish.
npm install @tegami/dartimport { tegami } from "tegami";
import { dart } from "@tegami/dart";
const paper = tegami({
plugins: [dart()],
});Requirements
dart must be available in CI and your repository must use official pub workspaces.
Discovery
Tegami reads the root pubspec.yaml and expands its workspace entries. Nested official workspaces are included through their own workspace entries.
Packages need a name in pubspec.yaml. Packages without a version, or packages with publish_to: none, are skipped during publishing.
Dependency Bumping
Tegami treats dependencies whose names match another Dart workspace package as workspace dependencies.
| Dependency kind | Default dependent bump |
|---|---|
dependencies | patch |
dependency_overrides | patch |
dev_dependencies | none |
Workspace dependents in dependencies and dependency_overrides are patch-bumped when a linked package is released. Constraints are rewritten when they no longer accept the new version.
Configuration
dart({
updateLockFile: false,
bumpDep: ({ kind }) => (kind === "dev_dependencies" ? false : "patch"),
});Prop
Type
Publishing
Tegami publishes packages with dart pub publish, adding --force in CI. Packages using publish_to: none are skipped.
For publish status checks, Tegami uses the hosted pub repository API. If a package has a custom publish_to URL, Tegami checks that hosted registry instead of pub.dev.