autorel 2.2.13 → 2.3.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,26 @@
1
+ import { ReleaseType, SemVer } from './types';
2
+ export declare function incrByType(version: SemVer, releaseType: ReleaseType): SemVer;
3
+ export declare function incrPatch(version: SemVer): SemVer;
4
+ export declare function incrMinor(version: SemVer): SemVer;
5
+ export declare function incrMajor(version: SemVer): SemVer;
6
+ /**
7
+ * Increments the version based on the release type. The next version must
8
+ * be greater than the latest version except for the following case:
9
+ * 2. The latest version is a prerelease of a different channel. Even in this case,
10
+ * the next version must be greater than the last stable/production version.
11
+ *
12
+ * Parameters:
13
+ * - `latestVer` is typically the current version of the package and the same as
14
+ * `latestStableVer` if the last release was a stable/production release.
15
+ * - `latestStableVer` is the last stable/production release.
16
+ * - `releaseType` is the type of release to make.
17
+ * - `prereleaseChannel` is the name of the prerelease channel, if it's a prerelease.
18
+ * - `latestChannelVer` is the last version of the package on the same channel.
19
+ */
20
+ export declare function incrVer(input: {
21
+ latestVer: SemVer;
22
+ latestStableVer: SemVer;
23
+ latestChannelVer?: SemVer;
24
+ releaseType: ReleaseType;
25
+ prereleaseChannel?: string;
26
+ }): SemVer;
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.incrVer = exports.incrMajor = exports.incrMinor = exports.incrPatch = exports.incrByType = void 0;
4
+ const compare_1 = require("./compare");
5
+ const parse_1 = require("./parse");
6
+ const errors_1 = require("./errors");
7
+ function incrByType(version, releaseType) {
8
+ switch (releaseType) {
9
+ case 'major':
10
+ return incrMajor(version);
11
+ case 'minor':
12
+ return incrMinor(version);
13
+ case 'patch':
14
+ return incrPatch(version);
15
+ default:
16
+ return version;
17
+ }
18
+ }
19
+ exports.incrByType = incrByType;
20
+ function incrPatch(version) {
21
+ return {
22
+ ...version,
23
+ major: version.major,
24
+ minor: version.minor,
25
+ patch: version.patch + 1,
26
+ ...(version.build ? { build: 1 } : {}),
27
+ };
28
+ }
29
+ exports.incrPatch = incrPatch;
30
+ function incrMinor(version) {
31
+ return {
32
+ ...version,
33
+ major: version.major,
34
+ minor: version.minor + 1,
35
+ patch: 0,
36
+ ...(version.build ? { build: 1 } : {}),
37
+ };
38
+ }
39
+ exports.incrMinor = incrMinor;
40
+ function incrMajor(version) {
41
+ return {
42
+ ...version,
43
+ major: version.major + 1,
44
+ minor: 0,
45
+ patch: 0,
46
+ ...(version.build ? { build: 1 } : {}),
47
+ };
48
+ }
49
+ exports.incrMajor = incrMajor;
50
+ /**
51
+ * Increments the version based on the release type. The next version must
52
+ * be greater than the latest version except for the following case:
53
+ * 2. The latest version is a prerelease of a different channel. Even in this case,
54
+ * the next version must be greater than the last stable/production version.
55
+ *
56
+ * Parameters:
57
+ * - `latestVer` is typically the current version of the package and the same as
58
+ * `latestStableVer` if the last release was a stable/production release.
59
+ * - `latestStableVer` is the last stable/production release.
60
+ * - `releaseType` is the type of release to make.
61
+ * - `prereleaseChannel` is the name of the prerelease channel, if it's a prerelease.
62
+ * - `latestChannelVer` is the last version of the package on the same channel.
63
+ */
64
+ // eslint-disable-next-line max-lines-per-function
65
+ function incrVer(input) {
66
+ const { latestStableVer, latestVer, releaseType, prereleaseChannel, latestChannelVer } = input;
67
+ // santiy checks and input validation
68
+ if (releaseType === 'none')
69
+ throw new Error(errors_1.errors.noReleaseErr);
70
+ if ((0, compare_1.compareVersions)(latestVer, latestStableVer) < 0)
71
+ throw new Error(errors_1.errors.outOfOrderErr);
72
+ if ((0, parse_1.isVerPrerelease)(latestStableVer))
73
+ throw new Error(errors_1.errors.stableVerNotValid);
74
+ if (prereleaseChannel && latestChannelVer && (0, compare_1.compareVersions)(latestChannelVer, latestVer) > 0)
75
+ throw new Error(errors_1.errors.lastChannelVerTooLarge);
76
+ if (prereleaseChannel && latestChannelVer && prereleaseChannel !== latestChannelVer.channel)
77
+ throw new Error(errors_1.errors.lastChannelVerNotSameChannel);
78
+ const isPrerelease = !!prereleaseChannel;
79
+ const nextRootVer = (0, compare_1.highestVersion)(incrByType(latestStableVer, releaseType), (0, parse_1.rootVersion)(latestVer));
80
+ if (isPrerelease) {
81
+ const nextVer = {
82
+ ...nextRootVer,
83
+ channel: prereleaseChannel,
84
+ build: 1,
85
+ };
86
+ // If no previous version exists on this channel, start a new prerelease with build 1.
87
+ // If the proposed next version is greater than the latest on this channel,
88
+ // return the next version (with build=1).
89
+ // Otherwise, continue the current prerelease by incrementing the build number.
90
+ if (!latestChannelVer || (0, compare_1.compareVersions)(nextVer, latestChannelVer) > 0) {
91
+ return nextVer;
92
+ }
93
+ else {
94
+ // Otherwise, increment the build number of the last channel version
95
+ return {
96
+ ...latestChannelVer,
97
+ build: (latestChannelVer.build ?? 1) + 1,
98
+ };
99
+ }
100
+ }
101
+ else {
102
+ return nextRootVer;
103
+ }
104
+ }
105
+ exports.incrVer = incrVer;
106
+ //# sourceMappingURL=increment.js.map
@@ -0,0 +1,5 @@
1
+ export * from './types';
2
+ export * from './compare';
3
+ export * from './increment';
4
+ export * from './parse';
5
+ export * from './errors';
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./types"), exports);
18
+ __exportStar(require("./compare"), exports);
19
+ __exportStar(require("./increment"), exports);
20
+ __exportStar(require("./parse"), exports);
21
+ __exportStar(require("./errors"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,25 @@
1
+ import { SemVer } from './types';
2
+ export declare function toTag(version: SemVer): string;
3
+ export declare function fromTag(tag: string): SemVer | undefined;
4
+ /**
5
+ * Checks if a version string is a valid SemVer tag by attempting to parse it.
6
+ */
7
+ export declare function isValidTag(ver: string): boolean;
8
+ export declare function isValidVersion(version: SemVer): boolean;
9
+ export declare function isVerPrerelease(version: SemVer): boolean;
10
+ /**
11
+ * Normalizes a SemVer object by ensuring that the channel and build properties are set.
12
+ */
13
+ export declare function normalizeVer(version: SemVer): SemVer;
14
+ /**
15
+ * Returns the root version of a SemVer object (ie, without the channel and build).
16
+ * Examples:
17
+ * - 1.0.0-alpha.1 => 1.0.0
18
+ * - 1.0.0 => 1.0.0
19
+ */
20
+ export declare function rootVersion(version: SemVer): SemVer;
21
+ export type VersionWithRaw = {
22
+ version: SemVer;
23
+ raw: string;
24
+ };
25
+ export declare function parseTags(tags: string[]): VersionWithRaw[];
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseTags = exports.rootVersion = exports.normalizeVer = exports.isVerPrerelease = exports.isValidVersion = exports.isValidTag = exports.fromTag = exports.toTag = void 0;
4
+ const typura_1 = require("typura");
5
+ const isValidSemVer = typura_1.predicates.object({
6
+ major: typura_1.predicates.number(),
7
+ minor: typura_1.predicates.number(),
8
+ patch: typura_1.predicates.number(),
9
+ channel: typura_1.predicates.optional(typura_1.predicates.string()),
10
+ build: typura_1.predicates.optional(typura_1.predicates.number()),
11
+ });
12
+ function toTag(version) {
13
+ const [validationErr] = (0, typura_1.toResult)(() => isValidSemVer(version));
14
+ if (validationErr) {
15
+ throw new Error('Invalid SemVer object', { cause: validationErr });
16
+ }
17
+ let versionString = `${version.major}.${version.minor}.${version.patch}`;
18
+ if (version.channel) {
19
+ versionString += `-${version.channel}`;
20
+ if (version.build) {
21
+ versionString += `.${version.build}`;
22
+ }
23
+ }
24
+ return `v${versionString}`;
25
+ }
26
+ exports.toTag = toTag;
27
+ function fromTag(tag) {
28
+ const semverRegex = /^v(?<major>0|[1-9]\d*)\.(?<minor>0|[1-9]\d*)\.(?<patch>0|[1-9]\d*)(?:-(?<channel>[0-9a-zA-Z-]+)(?:\.(?<build>[0-9a-zA-Z-]+))?)?(?:\+(?<buildmetadata>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
29
+ const match = tag.match(semverRegex);
30
+ if (!match || !match.groups) {
31
+ return undefined;
32
+ }
33
+ const { major, minor, patch, channel, build } = match.groups;
34
+ return normalizeVer({
35
+ major: parseInt(major, 10),
36
+ minor: parseInt(minor, 10),
37
+ patch: parseInt(patch, 10),
38
+ ...(channel ? { channel } : {}),
39
+ ...(build ? { build: parseInt(build, 10) } : {}),
40
+ });
41
+ }
42
+ exports.fromTag = fromTag;
43
+ /**
44
+ * Checks if a version string is a valid SemVer tag by attempting to parse it.
45
+ */
46
+ function isValidTag(ver) {
47
+ return !!fromTag(ver);
48
+ }
49
+ exports.isValidTag = isValidTag;
50
+ function isValidVersion(version) {
51
+ const [err, tag] = (0, typura_1.toResult)(() => toTag(version));
52
+ if (err)
53
+ return false;
54
+ return !!fromTag(tag);
55
+ }
56
+ exports.isValidVersion = isValidVersion;
57
+ function isVerPrerelease(version) {
58
+ return !!version.channel;
59
+ }
60
+ exports.isVerPrerelease = isVerPrerelease;
61
+ /**
62
+ * Normalizes a SemVer object by ensuring that the channel and build properties are set.
63
+ */
64
+ function normalizeVer(version) {
65
+ return {
66
+ major: version.major,
67
+ minor: version.minor,
68
+ patch: version.patch,
69
+ ...(version.channel ? {
70
+ channel: version.channel,
71
+ build: version.build || 1,
72
+ } : {}),
73
+ };
74
+ }
75
+ exports.normalizeVer = normalizeVer;
76
+ /**
77
+ * Returns the root version of a SemVer object (ie, without the channel and build).
78
+ * Examples:
79
+ * - 1.0.0-alpha.1 => 1.0.0
80
+ * - 1.0.0 => 1.0.0
81
+ */
82
+ function rootVersion(version) {
83
+ return {
84
+ major: version.major,
85
+ minor: version.minor,
86
+ patch: version.patch,
87
+ };
88
+ }
89
+ exports.rootVersion = rootVersion;
90
+ function parseTags(tags) {
91
+ return tags
92
+ .map((raw) => {
93
+ const version = fromTag(raw);
94
+ return version ? { raw, version } : undefined;
95
+ })
96
+ .filter((entry) => !!entry);
97
+ }
98
+ exports.parseTags = parseTags;
99
+ //# sourceMappingURL=parse.js.map
@@ -0,0 +1,8 @@
1
+ export type SemVer = {
2
+ major: number;
3
+ minor: number;
4
+ patch: number;
5
+ channel?: string;
6
+ build?: number;
7
+ };
8
+ export type ReleaseType = 'major' | 'minor' | 'patch' | 'none';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -2,11 +2,9 @@ export type Commit = {
2
2
  hash: string;
3
3
  message: string;
4
4
  };
5
- export declare function gitFetchTags(): void;
5
+ export declare function gitFetch(): void;
6
6
  export declare function createAndPushTag(tag: string): void;
7
- export declare function getLastChannelTag(channel: string): string | undefined;
8
- export declare function getHighestTag(): string | undefined;
9
- export declare function getLastStableTag(): string | undefined;
7
+ export declare function getLatestTags(): string[];
10
8
  export declare function getRepo(): {
11
9
  owner: string;
12
10
  repository: string;
@@ -1,28 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getCurrentBranch = exports.getCommitsFromTag = exports.getRepo = exports.getLastStableTag = exports.getHighestTag = exports.getLastChannelTag = exports.createAndPushTag = exports.gitFetchTags = void 0;
3
+ exports.getCurrentBranch = exports.getCommitsFromTag = exports.getRepo = exports.getLatestTags = exports.createAndPushTag = exports.gitFetch = void 0;
4
4
  const sh_1 = require("./sh");
5
- function gitFetchTags() {
5
+ function gitFetch() {
6
6
  (0, sh_1.$) `git fetch`;
7
7
  }
8
- exports.gitFetchTags = gitFetchTags;
8
+ exports.gitFetch = gitFetch;
9
9
  function createAndPushTag(tag) {
10
10
  (0, sh_1.$) `git tag ${tag}`;
11
11
  (0, sh_1.$) `git push origin ${tag}`;
12
12
  }
13
13
  exports.createAndPushTag = createAndPushTag;
14
- function getLastChannelTag(channel) {
15
- return (0, sh_1.$) `git tag | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+-${channel}\.[0-9]+$' | sort -V | tail -n 1` || undefined;
14
+ function getLatestTags() {
15
+ const tags = (0, sh_1.$) `git tag --sort=-v:refname | head -n 100`;
16
+ return tags.split('\n').filter((tag) => tag.trim() !== '');
16
17
  }
17
- exports.getLastChannelTag = getLastChannelTag;
18
- function getHighestTag() {
19
- return (0, sh_1.$) `git tag --sort=-v:refname | head -n1` || undefined;
20
- }
21
- exports.getHighestTag = getHighestTag;
22
- function getLastStableTag() {
23
- return (0, sh_1.$) `git tag --sort=-v:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | head -n1` || undefined;
24
- }
25
- exports.getLastStableTag = getLastStableTag;
18
+ exports.getLatestTags = getLatestTags;
26
19
  function getRepo() {
27
20
  if (process.env.GITHUB_REPOSITORY) {
28
21
  const [owner, repository] = process.env.GITHUB_REPOSITORY.split('/');
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.bash = exports.$ = void 0;
7
7
  const child_process_1 = require("child_process");
8
- const output_1 = __importDefault(require("./output"));
8
+ const logger_1 = __importDefault(require("../lib/logger"));
9
9
  /**
10
10
  * Executes a bash program/command and returns the output. This is a tagged template
11
11
  * literal function, so you can use it like this:
@@ -16,7 +16,7 @@ const output_1 = __importDefault(require("./output"));
16
16
  */
17
17
  function $(strings, ...values) {
18
18
  const command = strings.reduce((acc, str, i) => acc + str + (values[i] || ''), '');
19
- output_1.default.debug(command);
19
+ logger_1.default.debug(`> ${command}`);
20
20
  const escapedCommand = command.replace(/(["$`\\])/g, '\\$1');
21
21
  const output = (0, child_process_1.execSync)(`bash -c "${escapedCommand}"`, { encoding: 'utf8' });
22
22
  return output.trim();
@@ -27,7 +27,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.updatePackageJsonVersion = void 0;
30
- const output_1 = __importDefault(require("./lib/output"));
30
+ const logger_1 = __importDefault(require("./lib/logger"));
31
31
  const fs_1 = require("fs");
32
32
  const fs = __importStar(require("fs"));
33
33
  const path = __importStar(require("path"));
@@ -38,7 +38,7 @@ function readPackageJson() {
38
38
  return JSON.parse(packageJsonData);
39
39
  }
40
40
  catch (error) {
41
- output_1.default.error('Unable to read or parse package.json');
41
+ logger_1.default.error('Unable to read or parse package.json');
42
42
  throw error;
43
43
  }
44
44
  }
@@ -51,7 +51,7 @@ function updatePackageJsonVersion(newVersion) {
51
51
  ...packageJson,
52
52
  version: newVersion.replace(/^v/, ''),
53
53
  }, null, 2));
54
- output_1.default.log('Successfully updated package.json locally');
54
+ logger_1.default.info('Successfully updated package.json locally');
55
55
  }
56
56
  exports.updatePackageJsonVersion = updatePackageJsonVersion;
57
57
  //# sourceMappingURL=updatePackageJsonVersion.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "autorel",
3
- "version": "2.2.13",
3
+ "version": "2.3.0-next.2",
4
4
  "description": "Automate semantic releases based on conventional commits. Similar to semantic-release but much simpler.",
5
5
  "license": "MIT",
6
6
  "author": "Marc H. Weiner <mhweiner234@gmail.com> (https://mhweiner.com)",
@@ -52,11 +52,12 @@
52
52
  "c8": "^7.10.0",
53
53
  "cjs-mock": "^0.1.0",
54
54
  "eslint": "^8.4.1",
55
- "hoare": "3.3.0",
55
+ "hoare": "3.4.4",
56
56
  "ts-node": "^10.4.0",
57
57
  "typescript": "^4.5.4"
58
58
  },
59
59
  "dependencies": {
60
+ "colorette": "2.0.20",
60
61
  "commander": "^12.1.0",
61
62
  "js-yaml": "^4.1.0",
62
63
  "typura": "^1.4.11"
@@ -1,8 +0,0 @@
1
- export declare function red(text: string): string;
2
- export declare function grey(text: string): string;
3
- export declare function yellow(text: string): string;
4
- export declare function green(text: string): string;
5
- export declare function bold(text: string): string;
6
- export declare function blue(text: string): string;
7
- export declare function white(text: string): string;
8
- export declare function strikethrough(text: string): string;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.strikethrough = exports.white = exports.blue = exports.bold = exports.green = exports.yellow = exports.grey = exports.red = void 0;
4
- function red(text) {
5
- return `\x1b[91m${text}\x1b[0m`;
6
- }
7
- exports.red = red;
8
- function grey(text) {
9
- return `\x1b[90m${text}\x1b[0m`;
10
- }
11
- exports.grey = grey;
12
- function yellow(text) {
13
- return `\x1b[33m${text}\x1b[0m`;
14
- }
15
- exports.yellow = yellow;
16
- function green(text) {
17
- return `\x1b[32m${text}\x1b[0m`;
18
- }
19
- exports.green = green;
20
- function bold(text) {
21
- return `\x1b[1m${text}\x1b[0m`;
22
- }
23
- exports.bold = bold;
24
- function blue(text) {
25
- return `\x1b[34m${text}\x1b[0m`;
26
- }
27
- exports.blue = blue;
28
- function white(text) {
29
- return `\x1b[37m${text}\x1b[0m`;
30
- }
31
- exports.white = white;
32
- function strikethrough(text) {
33
- return `\x1b[9m${text}\x1b[0m`;
34
- }
35
- exports.strikethrough = strikethrough;
36
- //# sourceMappingURL=colors.js.map
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const colors_1 = require("./colors");
4
- const prefix = '[autorel] ';
5
- function log(message) {
6
- console.log(`${prefix}${message}`);
7
- }
8
- function debug(message) {
9
- process.env.AUTOREL_DEBUG && log((0, colors_1.grey)(message));
10
- }
11
- function warn(message) {
12
- log((0, colors_1.yellow)(`Warning: ${message}`));
13
- }
14
- function error(message) {
15
- log((0, colors_1.red)(`Error: ${message}`));
16
- }
17
- exports.default = {
18
- log,
19
- debug,
20
- warn,
21
- error,
22
- };
23
- //# sourceMappingURL=output.js.map
package/dist/semver.d.ts DELETED
@@ -1,53 +0,0 @@
1
- export type SemVer = {
2
- major: number;
3
- minor: number;
4
- patch: number;
5
- channel?: string;
6
- build?: number;
7
- };
8
- export type ReleaseType = 'major' | 'minor' | 'patch' | 'none';
9
- export declare function toTag(version: SemVer): string;
10
- export declare function fromTag(tag: string): SemVer | null;
11
- export declare function isVerPrerelease(version: SemVer): boolean;
12
- export declare function normalize(version: SemVer): SemVer;
13
- /**
14
- * Compares two versions and returns:
15
- * - 1 if version1 is greater than version2
16
- * - -1 if version1 is less than version2
17
- * - 0 if they are equal
18
- */
19
- export declare function compareVersions(version1: SemVer, version2: SemVer): number;
20
- export declare function rootVersion(version: SemVer): SemVer;
21
- export declare function highestVersion(version1: SemVer, version2: SemVer): SemVer;
22
- export declare function incrByType(version: SemVer, releaseType: ReleaseType): SemVer;
23
- export declare function incrPatch(version: SemVer): SemVer;
24
- export declare function incrMinor(version: SemVer): SemVer;
25
- export declare function incrMajor(version: SemVer): SemVer;
26
- export declare function isValidTag(ver: string): boolean;
27
- export declare function isValidVersion(version: SemVer): boolean;
28
- export declare const outOfOrderErr: string;
29
- export declare const stableVerNotValid = "The stable version cannot be a prerelease.";
30
- export declare const lastChannelVerNotSameChannel = "The last channel version must be a prerelease of the same channel.";
31
- export declare const lastChannelVerTooLarge = "The last channel version cannot be greater than the highest version.";
32
- /**
33
- * Increments the version based on the release type. The next version must
34
- * be greater than the highest/current version except for the following cases:
35
- * 1. The release type is 'none'.
36
- * 2. The highest version is a prerelease of a different channel. Even in this case,
37
- * the next version must be greater than the last stable/production version.
38
- *
39
- * Parameters:
40
- * - `highestVer` is typically the current version of the package and the
41
- * same as `lastStableVer` if the last release was a stable/production release.
42
- * - `lastStableVer` is the last stable/production release.
43
- * - `releaseType` is the type of release to make.
44
- * - `prereleaseChannel` is the name of the prerelease channel, if it's a prerelease.
45
- * - `lastChannelVer` is the last version of the package on the same channel.
46
- */
47
- export declare function incrVer(input: {
48
- highestVer: SemVer;
49
- lastStableVer: SemVer;
50
- releaseType: ReleaseType;
51
- prereleaseChannel?: string;
52
- lastChannelVer?: SemVer;
53
- }): SemVer;