publishing_plan.ts

view source

Declarations
#

13 declarations

DependencyUpdate
#

publishing_plan.ts view source

DependencyUpdate import type {DependencyUpdate} from '@fuzdev/fuz_repos/publishing_plan.js';

dependent_package

type string

updated_dependency

type string

current_version

type string

new_version

type string

type

type "dependencies" | "devDependencies" | "peerDependencies"

generate_publishing_plan
#

publishing_plan.ts view source

(all_repos: LocalRepo[], options?: GeneratePlanOptions): Promise<PublishingPlan> import {generate_publishing_plan} from '@fuzdev/fuz_repos/publishing_plan.js';

Generates a publishing plan showing what would happen during publishing. Shows version changes, dependency updates, and breaking change cascades. Uses fixed-point iteration to resolve transitive cascades.

all_repos

type LocalRepo[]

options

default {}

returns

Promise<PublishingPlan>

GeneratePlanOptions
#

PublishingPlan
#

publishing_plan.ts view source

PublishingPlan import type {PublishingPlan} from '@fuzdev/fuz_repos/publishing_plan.js';

publishing_order

type string[]

version_changes

type VersionChange[]

dependency_updates

type DependencyUpdate[]

breaking_cascades

type Map<string, string[]>

warnings

type string[]

info

Informational sentences, not warnings: excluded non-npm repos, dev dependency cycles.

type string[]

no_changes

Package names with no changesets and no version change — nothing to publish.

type string[]

errors

type string[]

verbose_data?

type VerboseData

VerboseChangesetDetail
#

publishing_plan.ts view source

VerboseChangesetDetail import type {VerboseChangesetDetail} from '@fuzdev/fuz_repos/publishing_plan.js';

package_name

type string

files

type { filename: string; bump_type: BumpType; summary: string; }[]

VerboseData
#

VerboseGraphSummary
#

publishing_plan.ts view source

VerboseGraphSummary import type {VerboseGraphSummary} from '@fuzdev/fuz_repos/publishing_plan.js';

package_count

type number

internal_dep_count

type number

prod_peer_edges

type { from: string; to: string; type: "prod" | "peer"; }[]

dev_edges

type { from: string; to: string; }[]

prod_cycle_count

type number

dev_cycle_count

type number

VerboseIteration
#

VerboseIterationPackage
#

publishing_plan.ts view source

VerboseIterationPackage import type {VerboseIterationPackage} from '@fuzdev/fuz_repos/publishing_plan.js';

name

type string

changeset_count

type number

bump_from_changesets

type BumpType | null

required_bump

type BumpType | null

triggering_dep

type string | null

action

type "publish" | "escalation" | "auto_changeset" | "skip"

version_to

type string | null

is_breaking

type boolean

VerbosePropagationChain
#

publishing_plan.ts view source

VerbosePropagationChain import type {VerbosePropagationChain} from '@fuzdev/fuz_repos/publishing_plan.js';

source

type string

chain

type { pkg: string; dep_type: "prod" | "peer"; action: string; }[]

version_change_kind
#

publishing_plan.ts view source

(change: VersionChange): VersionChangeKind import {version_change_kind} from '@fuzdev/fuz_repos/publishing_plan.js';

Classifies a version change — the one classification the plan's logger, markdown, and side-effect preview share. A change without changesets of its own is auto even if its bump was raised.

change

returns

VersionChangeKind

VersionChange
#

publishing_plan.ts view source

VersionChange import type {VersionChange} from '@fuzdev/fuz_repos/publishing_plan.js';

package_name

type string

from

type string

to

type string

bump_type

type BumpType

breaking

type boolean

has_changesets

type boolean

will_generate_changeset?

type boolean

needs_bump_escalation?

type boolean

existing_bump?

type BumpType

required_bump?

type BumpType

VersionChangeKind
#

publishing_plan.ts view source

VersionChangeKind

type "explicit" | "escalation" | "auto"

import type {VersionChangeKind} from '@fuzdev/fuz_repos/publishing_plan.js';

How a version change arises in the plan: from the package's own changesets (explicit), from its changesets with the bump raised to what a breaking dependency requires (escalation), or from a changeset the executor generates for a dependency update (auto).

Depends on
#

Imported by
#