MCPcopy Create free account
hub / github.com/dmno-dev/bumpy / BumpyConfig

Interface BumpyConfig

packages/bumpy/src/types.ts:126–195  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

124}
125
126export interface BumpyConfig {
127 baseBranch: string;
128 access: 'public' | 'restricted';
129 /**
130 * Prerelease channels, keyed by channel name. Each maps a long-lived branch
131 * to a prerelease line (version suffix + npm dist-tag). Shipped bump files
132 * are tracked in `.bumpy/<name>/`. Prerelease versions are never committed —
133 * they are derived from bump files, the registry, and git tags at publish time.
134 */
135 channels: Record<string, ChannelConfig>;
136 /**
137 * Snapshot release settings. Snapshots publish the pending release plan transiently
138 * under a throwaway dist-tag (e.g. for previewing a PR from a private registry) without
139 * consuming bump files, writing changelogs, committing, or tagging. See `bumpy publish --snapshot`.
140 */
141 snapshot: SnapshotConfig;
142 /**
143 * Customize the commit message used when versioning.
144 * A string starting with "./" is treated as a path to a module that exports
145 * a function receiving the release plan and returning a message string.
146 * Any other string is used as a static commit message.
147 * Omit to use the default: "Version packages\n\npkg@version..."
148 */
149 versionCommitMessage?: string;
150 changelog: false | string | [string, Record<string, unknown>];
151 fixed: string[][];
152 linked: string[][];
153 /** Glob patterns to filter which changed files count toward marking a package as changed */
154 changedFilePatterns: string[];
155 /**
156 * Top-level `package.json` fields whose change alone does NOT mark a package as
157 * changed (i.e. doesn't require a bump file). When `package.json` is the only changed
158 * file in a package, bumpy diffs it against the base branch and ignores changes
159 * confined to these fields. Default: `["devDependencies"]` — dev-only dependency
160 * updates (e.g. Dependabot) don't affect published output. Exception: a changed
161 * `devDependencies` entry that matches the package's `releaseTriggeringDevDeps` still
162 * counts, since it ships in the bundle.
163 */
164 ignoredPackageJsonFields: string[];
165 /** Package names/globs to exclude from version management */
166 ignore: string[];
167 /** Package names/globs to explicitly include (overrides private + ignore) */
168 include: string[];
169 updateInternalDependencies: 'patch' | 'minor' | 'out-of-range';
170 dependencyBumpRules: Partial<Record<DepType, DependencyBumpRule | false>>;
171 privatePackages: { version: boolean; tag: boolean };
172 /**
173 * Allow per-package custom commands (buildCommand, publishCommand, checkPublished)
174 * defined in package.json "bumpy" fields.
175 * Commands defined in the root config's `packages` map are always trusted.
176 *
177 * true = allow all packages to define custom commands
178 * string[] = allow only matching package names/globs
179 * false = only root-config commands are allowed (default)
180 */
181 allowCustomCommands: boolean | string[];
182 packages: Record<string, PackageConfig>;
183 publish: PublishConfig;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…