UNPKG

release-please

Version:

generate release PRs based on the conventionalcommits.org spec

59 lines (58 loc) 2.3 kB
import { CandidateReleasePullRequest } from '../manifest'; import { WorkspacePlugin, DependencyGraph } from './workspace'; import { CargoManifest } from '../updaters/rust/common'; import { VersionsMap, Version } from '../version'; import { Strategy } from '../strategy'; import { Commit } from '../commit'; import { Release } from '../release'; interface CrateInfo { /** * e.g. `crates/crate-a` */ path: string; /** * e.g. `crate-a` */ name: string; /** * e.g. `1.0.0` */ version: string; /** * e.g. `crates/crate-a/Cargo.toml` */ manifestPath: string; /** * text content of the manifest, used for updates */ manifestContent: string; /** * Parsed cargo manifest */ manifest: CargoManifest; } /** * The plugin analyzed a cargo workspace and will bump dependencies * of managed packages if those dependencies are being updated. * * If multiple rust packages are being updated, it will merge them * into a single rust package. */ export declare class CargoWorkspace extends WorkspacePlugin<CrateInfo> { private strategiesByPath; private releasesByPath; protected buildAllPackages(candidates: CandidateReleasePullRequest[]): Promise<{ allPackages: CrateInfo[]; candidatesByPackage: Record<string, CandidateReleasePullRequest>; }>; protected bumpVersion(pkg: CrateInfo): Version; protected updateCandidate(existingCandidate: CandidateReleasePullRequest, pkg: CrateInfo, updatedVersions: VersionsMap): CandidateReleasePullRequest; protected newCandidate(pkg: CrateInfo, updatedVersions: VersionsMap): Promise<CandidateReleasePullRequest>; protected postProcessCandidates(candidates: CandidateReleasePullRequest[], updatedVersions: VersionsMap): CandidateReleasePullRequest[]; protected buildGraph(allPackages: CrateInfo[]): Promise<DependencyGraph<CrateInfo>>; protected inScope(candidate: CandidateReleasePullRequest): boolean; protected packageNameFromPackage(pkg: CrateInfo): string; protected pathFromPackage(pkg: CrateInfo): string; preconfigure(strategiesByPath: Record<string, Strategy>, _commitsByPath: Record<string, Commit[]>, _releasesByPath: Record<string, Release>): Promise<Record<string, Strategy>>; } export {};