Skip to content

Commit 7c25570

Browse files
Copilottylerbutler
andcommitted
Reverse approach: keep vnext as main command, move old to legacy with aliases
Co-authored-by: tylerbutler <[email protected]>
1 parent d45f05c commit 7c25570

File tree

5 files changed

+46
-47
lines changed

5 files changed

+46
-47
lines changed

build-tools/packages/build-cli/docs/generate.md

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ Generate commands are used to create/update code, docs, readmes, etc.
66
* [`flub generate assertTags`](#flub-generate-asserttags)
77
* [`flub generate buildVersion`](#flub-generate-buildversion)
88
* [`flub generate bundleStats`](#flub-generate-bundlestats)
9-
* [`flub generate changelog`](#flub-generate-changelog)
109
* [`flub generate changeset`](#flub-generate-changeset)
1110
* [`flub generate compatLayerGeneration`](#flub-generate-compatlayergeneration)
1211
* [`flub generate entrypoints`](#flub-generate-entrypoints)
@@ -138,38 +137,6 @@ DESCRIPTION
138137

139138
_See code: [src/commands/generate/bundleStats.ts](https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/build-cli/src/commands/generate/bundleStats.ts)_
140139

141-
## `flub generate changelog`
142-
143-
Generate a changelog for packages based on changesets. Note that this process deletes the changeset files!
144-
145-
```
146-
USAGE
147-
$ flub generate changelog -g <value> [-v | --quiet] [--version <value>]
148-
149-
FLAGS
150-
-g, --releaseGroup=<value> (required) The name of a release group.
151-
--version=<value> The version for which to generate the changelog. If this is not provided, the version of
152-
the package according to package.json will be used.
153-
154-
LOGGING FLAGS
155-
-v, --verbose Enable verbose logging.
156-
--quiet Disable all logging.
157-
158-
DESCRIPTION
159-
Generate a changelog for packages based on changesets. Note that this process deletes the changeset files!
160-
161-
ALIASES
162-
$ flub vnext generate changelog
163-
$ flub vnext generate changelogs
164-
165-
EXAMPLES
166-
Generate changelogs for the client release group.
167-
168-
$ flub generate changelog --releaseGroup client
169-
```
170-
171-
_See code: [src/commands/generate/changelog.ts](https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/build-cli/src/commands/generate/changelog.ts)_
172-
173140
## `flub generate changeset`
174141

175142
Generates a new changeset file. You will be prompted to select the packages affected by this change. You can also create an empty changeset to include with this change that can be updated later.

build-tools/packages/build-cli/docs/legacy.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Legacy commands that have been replaced by newer implementations.
77

88
## `flub legacy generate changelog`
99

10-
[DEPRECATED] Generate a changelog for packages based on changesets. Use 'flub generate changelog' instead.
10+
[DEPRECATED] Generate a changelog for packages based on changesets. Use 'flub vnext generate changelog' instead.
1111

1212
```
1313
USAGE
@@ -26,7 +26,7 @@ LOGGING FLAGS
2626
--quiet Disable all logging.
2727
2828
DESCRIPTION
29-
[DEPRECATED] Generate a changelog for packages based on changesets. Use 'flub generate changelog' instead.
29+
[DEPRECATED] Generate a changelog for packages based on changesets. Use 'flub vnext generate changelog' instead.
3030
3131
EXAMPLES
3232
Generate changelogs for the client release group.

build-tools/packages/build-cli/docs/vnext.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
Vnext commands are new implementations of standard flub commands using new infrastructure.
55

66
* [`flub vnext check latestVersions`](#flub-vnext-check-latestversions)
7+
* [`flub vnext generate changelog`](#flub-vnext-generate-changelog)
78

89
## `flub vnext check latestVersions`
910

@@ -31,3 +32,36 @@ DESCRIPTION
3132
```
3233

3334
_See code: [src/commands/vnext/check/latestVersions.ts](https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/build-cli/src/commands/vnext/check/latestVersions.ts)_
35+
36+
## `flub vnext generate changelog`
37+
38+
Generate a changelog for packages based on changesets. Note that this process deletes the changeset files!
39+
40+
```
41+
USAGE
42+
$ flub vnext generate changelog -g <value> [-v | --quiet] [--version <value>]
43+
44+
FLAGS
45+
-g, --releaseGroup=<value> (required) The name of a release group.
46+
--version=<value> The version for which to generate the changelog. If this is not provided, the version of
47+
the package according to package.json will be used.
48+
49+
LOGGING FLAGS
50+
-v, --verbose Enable verbose logging.
51+
--quiet Disable all logging.
52+
53+
DESCRIPTION
54+
Generate a changelog for packages based on changesets. Note that this process deletes the changeset files!
55+
56+
ALIASES
57+
$ flub vnext generate changelogs
58+
$ flub generate changelog
59+
$ flub generate changelogs
60+
61+
EXAMPLES
62+
Generate changelogs for the client release group.
63+
64+
$ flub vnext generate changelog --releaseGroup client
65+
```
66+
67+
_See code: [src/commands/vnext/generate/changelog.ts](https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/build-cli/src/commands/vnext/generate/changelog.ts)_

build-tools/packages/build-cli/src/commands/legacy/generate/changelog.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import { inc } from "semver";
1616
import { CleanOptions } from "simple-git";
1717

1818
import { checkFlags, releaseGroupFlag, semverFlag } from "../../../flags.js";
19-
// eslint-disable-next-line import/no-internal-modules
19+
// eslint-disable-next-line import-x/no-internal-modules
2020
import { canonicalizeChangesets } from "../../../library/changesets.js";
2121
import { BaseCommand } from "../../../library/index.js";
2222
import { isReleaseGroup } from "../../../releaseGroups.js";
@@ -38,17 +38,16 @@ async function replaceInFile(
3838
* https://github.com/changesets/changesets/issues/595. What we would like to do is generate the changelogs without
3939
* doing version bumping, but that feature does not exist in the changeset tools.
4040
*
41-
* @deprecated This command is deprecated. Use 'flub generate changelog' instead.
41+
* @deprecated This command is deprecated. Use 'flub vnext generate changelog' instead.
4242
*/
4343
export default class GenerateChangeLogCommand extends BaseCommand<
4444
typeof GenerateChangeLogCommand
4545
> {
4646
static readonly description =
47-
"[DEPRECATED] Generate a changelog for packages based on changesets. Use 'flub generate changelog' instead.";
47+
"[DEPRECATED] Generate a changelog for packages based on changesets. Use 'flub vnext generate changelog' instead.";
4848

49-
static readonly deprecateAliases = true;
5049
static readonly deprecated = {
51-
message: "This command is deprecated. Use 'flub generate changelog' instead.",
50+
message: "This command is deprecated. Use 'flub vnext generate changelog' instead.",
5251
};
5352

5453
static readonly flags = {

build-tools/packages/build-cli/src/commands/generate/changelog.ts renamed to build-tools/packages/build-cli/src/commands/vnext/generate/changelog.ts

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@ import { command as execCommand } from "execa";
88
import { parse } from "semver";
99

1010
import { setVersion } from "@fluid-tools/build-infrastructure";
11-
import { releaseGroupNameFlag, semverFlag } from "../../flags.js";
11+
import { releaseGroupNameFlag, semverFlag } from "../../../flags.js";
1212
// eslint-disable-next-line import/no-internal-modules
13-
import { updateChangelogs } from "../../library/changelogs.js";
14-
// eslint-disable-next-line import-x/no-internal-modules
15-
import { canonicalizeChangesets } from "../../library/changesets.js";
16-
import { BaseCommandWithBuildProject } from "../../library/index.js";
13+
import { updateChangelogs } from "../../../library/changelogs.js";
14+
// eslint-disable-next-line import/no-internal-modules
15+
import { canonicalizeChangesets } from "../../../library/changesets.js";
16+
import { BaseCommandWithBuildProject } from "../../../library/index.js";
1717

1818
/**
1919
* Generate a changelog for packages based on changesets. Note that this process deletes the changeset files!
@@ -28,8 +28,7 @@ export default class GenerateChangeLogCommand extends BaseCommandWithBuildProjec
2828
static readonly description =
2929
"Generate a changelog for packages based on changesets. Note that this process deletes the changeset files!";
3030

31-
static readonly aliases = ["vnext:generate:changelog", "vnext:generate:changelogs"];
32-
static readonly deprecateAliases = true;
31+
static readonly aliases = ["vnext:generate:changelogs", "generate:changelog", "generate:changelogs"];
3332

3433
static readonly flags = {
3534
releaseGroup: releaseGroupNameFlag({ required: true }),

0 commit comments

Comments
 (0)