@savvy-web/cli 2.11.3 → 2.11.4
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.
- package/cli/index.js +1 -1
- package/commands/changeset/commands/check.js +1 -1
- package/commands/changeset/commands/config-validate.js +1 -1
- package/commands/changeset/commands/deps-detect.js +6 -6
- package/commands/changeset/commands/deps-regen.js +5 -5
- package/commands/changeset/commands/lint.js +2 -2
- package/commands/changeset/commands/transform.js +3 -3
- package/commands/changeset/commands/validate-file.js +1 -1
- package/commands/changeset/commands/version.js +1 -1
- package/commands/check.js +2 -2
- package/commands/clean.js +2 -2
- package/commands/commit/lint.js +1 -1
- package/commands/init.js +4 -4
- package/commands/lint/biome-version.js +1 -1
- package/commands/lint/fmt.js +2 -2
- package/commands/repos/commands/add.js +6 -6
- package/commands/repos/commands/deregister.js +2 -2
- package/commands/repos/commands/note.js +5 -5
- package/commands/repos/commands/pin.js +3 -3
- package/commands/repos/commands/remove.js +2 -2
- package/commands/repos/commands/rename.js +3 -3
- package/commands/repos/commands/restore.js +2 -2
- package/commands/repos/commands/status.js +3 -3
- package/commands/repos/commands/sync.js +1 -1
- package/package.json +10 -10
package/cli/index.js
CHANGED
|
@@ -76,7 +76,7 @@ const rootCommand = Command.make("savvy").pipe(Command.withSubcommands([
|
|
|
76
76
|
* CLI application: reads argv from the Stdio service provided by NodeServices.
|
|
77
77
|
* (v4's `Command.run` takes only `version` — the name comes from the root command.)
|
|
78
78
|
*/
|
|
79
|
-
const cli = Command.run(rootCommand, { version: "2.11.
|
|
79
|
+
const cli = Command.run(rootCommand, { version: "2.11.4" });
|
|
80
80
|
/**
|
|
81
81
|
* Shared workspace services from `@effected/workspaces`, wired as a
|
|
82
82
|
* self-contained unit and built ONCE (layers memoize by reference).
|
|
@@ -27,7 +27,7 @@ import { resolve } from "node:path";
|
|
|
27
27
|
*/
|
|
28
28
|
const { ChangesetLinter } = Changesets;
|
|
29
29
|
/* v8 ignore next */
|
|
30
|
-
const dirArg = Argument.
|
|
30
|
+
const dirArg = Argument.Directory("dir").pipe(Argument.withDefault(".changeset"));
|
|
31
31
|
/**
|
|
32
32
|
* Run the check validation pipeline on all changeset files in `dir`.
|
|
33
33
|
*
|
|
@@ -26,7 +26,7 @@ import { resolve } from "node:path";
|
|
|
26
26
|
*/
|
|
27
27
|
const { ConfigInspector } = Changesets;
|
|
28
28
|
/* v8 ignore next */
|
|
29
|
-
const dirArg = Argument.
|
|
29
|
+
const dirArg = Argument.Directory("dir").pipe(Argument.withDefault("."));
|
|
30
30
|
/**
|
|
31
31
|
* Run validation. Logs a one-line OK on success; logs the error and sets
|
|
32
32
|
* `process.exitCode = 1` on failure.
|
|
@@ -29,12 +29,12 @@ import { resolve } from "node:path";
|
|
|
29
29
|
*/
|
|
30
30
|
const { DepsRegen, serializeDependencyTableToMarkdown } = Changesets;
|
|
31
31
|
/* v8 ignore start -- CLI option definitions */
|
|
32
|
-
const fromOption = Flag.
|
|
33
|
-
const toOption = Flag.
|
|
34
|
-
const cwdOption = Flag.
|
|
35
|
-
const packageOption = Flag.
|
|
36
|
-
const jsonOption = Flag.
|
|
37
|
-
const markdownOption = Flag.
|
|
32
|
+
const fromOption = Flag.String("from").pipe(Flag.withDescription("Older ref to diff from (defaults to merge-base with base branch)"), Flag.optional);
|
|
33
|
+
const toOption = Flag.String("to").pipe(Flag.withDescription("Newer ref to diff to (defaults to working tree)"), Flag.optional);
|
|
34
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Project root (defaults to the current working directory)"), Flag.withDefault("."));
|
|
35
|
+
const packageOption = Flag.String("package").pipe(Flag.withDescription("Restrict output to a single workspace package"), Flag.optional);
|
|
36
|
+
const jsonOption = Flag.Boolean("json").pipe(Flag.withDescription("Emit JSON (default)"), Flag.withDefault(false));
|
|
37
|
+
const markdownOption = Flag.Boolean("markdown").pipe(Flag.withDescription("Emit one CSH005 markdown block per workspace package"), Flag.withDefault(false));
|
|
38
38
|
/* v8 ignore stop */
|
|
39
39
|
/**
|
|
40
40
|
* Render a per-workspace diff as markdown — one frontmatter+section block
|
|
@@ -48,11 +48,11 @@ import { resolve } from "node:path";
|
|
|
48
48
|
*/
|
|
49
49
|
const { DepsRegen } = Changesets;
|
|
50
50
|
/* v8 ignore start -- CLI option definitions */
|
|
51
|
-
const cwdOption = Flag.
|
|
52
|
-
const baseOption = Flag.
|
|
53
|
-
const packageOption = Flag.
|
|
54
|
-
const dryRunOption = Flag.
|
|
55
|
-
const jsonOption = Flag.
|
|
51
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Project root (defaults to the current working directory)"), Flag.withDefault("."));
|
|
52
|
+
const baseOption = Flag.String("base").pipe(Flag.withDescription("Override the base branch (defaults to config baseBranch)"), Flag.optional);
|
|
53
|
+
const packageOption = Flag.String("package").pipe(Flag.withDescription("Restrict regeneration to a single workspace package"), Flag.optional);
|
|
54
|
+
const dryRunOption = Flag.Boolean("dry-run").pipe(Flag.withDescription("Print the plan without writing or deleting"), Flag.withDefault(false));
|
|
55
|
+
const jsonOption = Flag.Boolean("json").pipe(Flag.withDescription("Emit a structured plan as JSON"), Flag.withDefault(false));
|
|
56
56
|
/* v8 ignore stop */
|
|
57
57
|
/**
|
|
58
58
|
* Handler exported for direct invocation in tests.
|
|
@@ -28,8 +28,8 @@ import { resolve } from "node:path";
|
|
|
28
28
|
*/
|
|
29
29
|
const { ChangesetLinter } = Changesets;
|
|
30
30
|
/* v8 ignore start -- CLI option definitions; handler tested via runLint */
|
|
31
|
-
const dirArg = Argument.
|
|
32
|
-
const quietOption = Flag.
|
|
31
|
+
const dirArg = Argument.Directory("dir").pipe(Argument.withDefault(".changeset"));
|
|
32
|
+
const quietOption = Flag.Boolean("quiet").pipe(Flag.withAlias("q"), Flag.withDescription("Only output errors, no summary"), Flag.withDefault(false));
|
|
33
33
|
/* v8 ignore stop */
|
|
34
34
|
/**
|
|
35
35
|
* Run machine-readable lint validation on all changeset files in `dir`.
|
|
@@ -38,9 +38,9 @@ import { readFileSync, writeFileSync } from "node:fs";
|
|
|
38
38
|
*/
|
|
39
39
|
const { ChangelogTransformer } = Changesets;
|
|
40
40
|
/* v8 ignore start -- CLI option definitions; handler tested via runTransform */
|
|
41
|
-
const fileArg = Argument.
|
|
42
|
-
const dryRunOption = Flag.
|
|
43
|
-
const checkOption = Flag.
|
|
41
|
+
const fileArg = Argument.File("file").pipe(Argument.withDefault("CHANGELOG.md"));
|
|
42
|
+
const dryRunOption = Flag.Boolean("dry-run").pipe(Flag.withAlias("n"), Flag.withDescription("Print transformed output instead of writing"), Flag.withDefault(false));
|
|
43
|
+
const checkOption = Flag.Boolean("check").pipe(Flag.withAlias("c"), Flag.withDescription("Exit 1 if file would change (for CI)"), Flag.withDefault(false));
|
|
44
44
|
/* v8 ignore stop */
|
|
45
45
|
/**
|
|
46
46
|
* Run the remark transform pipeline on a single changelog file.
|
|
@@ -19,7 +19,7 @@ import { Argument, Command } from "effect/unstable/cli";
|
|
|
19
19
|
*/
|
|
20
20
|
const { ChangesetLinter } = Changesets;
|
|
21
21
|
/* v8 ignore next */
|
|
22
|
-
const fileArg = Argument.
|
|
22
|
+
const fileArg = Argument.File("file");
|
|
23
23
|
/**
|
|
24
24
|
* Run lint validation on a single changeset file.
|
|
25
25
|
*
|
|
@@ -15,7 +15,7 @@ import { Command, Flag } from "effect/unstable/cli";
|
|
|
15
15
|
* @internal
|
|
16
16
|
*/
|
|
17
17
|
/* v8 ignore start -- CLI option definitions; handler tested via runVersion */
|
|
18
|
-
const dryRunOption = Flag.
|
|
18
|
+
const dryRunOption = Flag.Boolean("dry-run").pipe(Flag.withAlias("n"), Flag.withDescription("Compute and report the release without writing anything"), Flag.withDefault(false));
|
|
19
19
|
/* v8 ignore stop */
|
|
20
20
|
/**
|
|
21
21
|
* Validate config, then natively apply (or dry-run) the release via
|
package/commands/check.js
CHANGED
|
@@ -25,8 +25,8 @@ import { Command, Flag } from "effect/unstable/cli";
|
|
|
25
25
|
* @internal
|
|
26
26
|
*/
|
|
27
27
|
/* v8 ignore start -- CLI option definitions; orchestration logic tested via runCheck */
|
|
28
|
-
const changesetDirOption = Flag.
|
|
29
|
-
const quietOption = Flag.
|
|
28
|
+
const changesetDirOption = Flag.String("changeset-dir").pipe(Flag.withDescription("Path to the changeset directory"), Flag.withDefault(".changeset"));
|
|
29
|
+
const quietOption = Flag.Boolean("quiet").pipe(Flag.withAlias("q"), Flag.withDescription("Only output warnings from lint check"), Flag.withDefault(false));
|
|
30
30
|
/* v8 ignore stop */
|
|
31
31
|
/**
|
|
32
32
|
* Run all three check step Effects without short-circuiting.
|
package/commands/clean.js
CHANGED
|
@@ -165,8 +165,8 @@ function runClean(opts) {
|
|
|
165
165
|
});
|
|
166
166
|
}
|
|
167
167
|
/* v8 ignore start -- CLI option/registration; orchestration tested via runClean */
|
|
168
|
-
const globsOption = Flag.
|
|
169
|
-
const dryRunOption = Flag.
|
|
168
|
+
const globsOption = Flag.String("globs").pipe(Flag.withAlias("g"), Flag.withDescription(`Comma-separated glob patterns to remove from each workspace root (default: ${DEFAULT_GLOBS.join(",")})`), Flag.withDefault(DEFAULT_GLOBS.join(",")));
|
|
169
|
+
const dryRunOption = Flag.Boolean("dry-run").pipe(Flag.withAlias("n"), Flag.withDescription("Report what would be removed without deleting anything"), Flag.withDefault(false));
|
|
170
170
|
const _cleanCommand = Command.make("clean", {
|
|
171
171
|
globs: globsOption,
|
|
172
172
|
dryRun: dryRunOption
|
package/commands/commit/lint.js
CHANGED
|
@@ -79,7 +79,7 @@ function runCommitLint(file) {
|
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
81
|
/* v8 ignore next */
|
|
82
|
-
const fileArg = Argument.
|
|
82
|
+
const fileArg = Argument.File("file", { mustExist: true });
|
|
83
83
|
/* v8 ignore next 3 -- CLI registration; handler tested via runCommitLint */
|
|
84
84
|
const lintCommand = Command.make("lint", { file: fileArg }, ({ file }) => runCommitLint(file)).pipe(Command.withDescription("Validate a candidate commit-message file against the Silk commitlint preset"));
|
|
85
85
|
|
package/commands/init.js
CHANGED
|
@@ -24,10 +24,10 @@ import { Command, Flag } from "effect/unstable/cli";
|
|
|
24
24
|
const DEFAULT_COMMIT_CONFIG = "lib/configs/commitlint.config.ts";
|
|
25
25
|
const DEFAULT_LINT_CONFIG = "lib/configs/lint-staged.config.ts";
|
|
26
26
|
/* v8 ignore start -- CLI option definitions; orchestration logic tested via runInit */
|
|
27
|
-
const forceOption = Flag.
|
|
28
|
-
const commitConfigOption = Flag.
|
|
29
|
-
const lintConfigOption = Flag.
|
|
30
|
-
const lintPresetOption = Flag.
|
|
27
|
+
const forceOption = Flag.Boolean("force").pipe(Flag.withAlias("f"), Flag.withDescription("Overwrite existing config files and hooks across all tools"), Flag.withDefault(false));
|
|
28
|
+
const commitConfigOption = Flag.String("commit-config").pipe(Flag.withDescription("Relative path for the commitlint config file"), Flag.withDefault(DEFAULT_COMMIT_CONFIG));
|
|
29
|
+
const lintConfigOption = Flag.String("lint-config").pipe(Flag.withDescription("Relative path for the lint-staged config file"), Flag.withDefault(DEFAULT_LINT_CONFIG));
|
|
30
|
+
const lintPresetOption = Flag.Literals("lint-preset", [
|
|
31
31
|
"minimal",
|
|
32
32
|
"standard",
|
|
33
33
|
"silk"
|
package/commands/lint/fmt.js
CHANGED
|
@@ -16,7 +16,7 @@ import { Yaml } from "@effected/yaml";
|
|
|
16
16
|
* @internal
|
|
17
17
|
*/
|
|
18
18
|
/** Repeated file path arguments. */
|
|
19
|
-
const filesArg = Argument.
|
|
19
|
+
const filesArg = Argument.File("files", { mustExist: true }).pipe(Argument.variadic());
|
|
20
20
|
/**
|
|
21
21
|
* Formatting options forwarded from `Lint.Yaml.fmtCommand`.
|
|
22
22
|
*
|
|
@@ -25,7 +25,7 @@ const filesArg = Argument.file("files", { mustExist: true }).pipe(Argument.varia
|
|
|
25
25
|
* handler only reach the formatter across this flag. Omitting it would make
|
|
26
26
|
* `fmtCommand({ format })` and `create({ format })` write different bytes.
|
|
27
27
|
*/
|
|
28
|
-
const yamlFormatOption = Flag.
|
|
28
|
+
const yamlFormatOption = Flag.String("format").pipe(Flag.withDescription("JSON-encoded @effected/yaml formatting options"), Flag.optional);
|
|
29
29
|
/** Sort package.json files with sort-package-json. */
|
|
30
30
|
const packageJsonCommand = Command.make("package-json", { files: filesArg }, ({ files }) => Effect.sync(() => {
|
|
31
31
|
for (const filepath of files) {
|
|
@@ -29,12 +29,12 @@ import { Argument, Command, Flag } from "effect/unstable/cli";
|
|
|
29
29
|
* @internal
|
|
30
30
|
*/
|
|
31
31
|
/* v8 ignore start -- CLI option/arg definitions */
|
|
32
|
-
const urlArg = Argument.
|
|
33
|
-
const refOption = Flag.
|
|
34
|
-
const purposeOption = Flag.
|
|
35
|
-
const nameOption = Flag.
|
|
36
|
-
const sparseOption = Flag.
|
|
37
|
-
const cwdOption = Flag.
|
|
32
|
+
const urlArg = Argument.String("url");
|
|
33
|
+
const refOption = Flag.String("ref").pipe(Flag.withDescription("Ref (tag, branch, or commit) to check out"));
|
|
34
|
+
const purposeOption = Flag.String("purpose").pipe(Flag.withDescription("Why this repo is vendored"));
|
|
35
|
+
const nameOption = Flag.String("name").pipe(Flag.withDescription("Vendored directory name; defaults to the URL's last path segment"), Flag.optional);
|
|
36
|
+
const sparseOption = Flag.String("sparse").pipe(Flag.withDescription("Sparse-checkout path; repeatable"), Flag.atLeast(0));
|
|
37
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to add within"), Flag.withDefault("."));
|
|
38
38
|
/* v8 ignore stop */
|
|
39
39
|
/**
|
|
40
40
|
* Add handler; exported for tests.
|
|
@@ -36,8 +36,8 @@ import { Argument, Command, Flag } from "effect/unstable/cli";
|
|
|
36
36
|
* @internal
|
|
37
37
|
*/
|
|
38
38
|
/* v8 ignore start -- CLI option/arg definitions */
|
|
39
|
-
const sectionArg = Argument.
|
|
40
|
-
const cwdOption = Flag.
|
|
39
|
+
const sectionArg = Argument.String("section");
|
|
40
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to deregister within"), Flag.withDefault("."));
|
|
41
41
|
/* v8 ignore stop */
|
|
42
42
|
/**
|
|
43
43
|
* Deregister handler; exported for tests.
|
|
@@ -52,11 +52,11 @@ const runReposNote = (cwd, name, op) => Effect.gen(function* () {
|
|
|
52
52
|
return Effect.log(error.message);
|
|
53
53
|
}));
|
|
54
54
|
/* v8 ignore start -- CLI registration; handler tested via runReposNote */
|
|
55
|
-
const nameArg = Argument.
|
|
56
|
-
const noteTextArg = Argument.
|
|
57
|
-
const noteIdArg = Argument.
|
|
58
|
-
const intoOption = Flag.
|
|
59
|
-
const cwdOption = Flag.
|
|
55
|
+
const nameArg = Argument.String("name");
|
|
56
|
+
const noteTextArg = Argument.String("text");
|
|
57
|
+
const noteIdArg = Argument.String("id");
|
|
58
|
+
const intoOption = Flag.Literals("into", ["layout", "startHere"]).pipe(Flag.withDescription("Curated orientation field to promote the note into"));
|
|
59
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root whose manifest holds the notes"), Flag.withDefault("."));
|
|
60
60
|
const _noteGroup = Command.make("note").pipe(Command.withSharedFlags({ cwd: cwdOption }));
|
|
61
61
|
const addLeaf = Command.make("add", {
|
|
62
62
|
name: nameArg,
|
|
@@ -28,9 +28,9 @@ import { Argument, Command, Flag } from "effect/unstable/cli";
|
|
|
28
28
|
* @internal
|
|
29
29
|
*/
|
|
30
30
|
/* v8 ignore start -- CLI option/arg definitions */
|
|
31
|
-
const nameArg = Argument.
|
|
32
|
-
const refArg = Argument.
|
|
33
|
-
const cwdOption = Flag.
|
|
31
|
+
const nameArg = Argument.String("name");
|
|
32
|
+
const refArg = Argument.String("ref");
|
|
33
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to pin within"), Flag.withDefault("."));
|
|
34
34
|
/* v8 ignore stop */
|
|
35
35
|
/**
|
|
36
36
|
* Pin handler; exported for tests.
|
|
@@ -33,8 +33,8 @@ import { Argument, Command, Flag } from "effect/unstable/cli";
|
|
|
33
33
|
* @internal
|
|
34
34
|
*/
|
|
35
35
|
/* v8 ignore start -- CLI option/arg definitions */
|
|
36
|
-
const nameArg = Argument.
|
|
37
|
-
const cwdOption = Flag.
|
|
36
|
+
const nameArg = Argument.String("name");
|
|
37
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to remove within"), Flag.withDefault("."));
|
|
38
38
|
/* v8 ignore stop */
|
|
39
39
|
/**
|
|
40
40
|
* Remove handler; exported for tests.
|
|
@@ -34,9 +34,9 @@ import { Argument, Command, Flag } from "effect/unstable/cli";
|
|
|
34
34
|
* @internal
|
|
35
35
|
*/
|
|
36
36
|
/* v8 ignore start -- CLI option/arg definitions */
|
|
37
|
-
const oldNameArg = Argument.
|
|
38
|
-
const newNameArg = Argument.
|
|
39
|
-
const cwdOption = Flag.
|
|
37
|
+
const oldNameArg = Argument.String("old-name");
|
|
38
|
+
const newNameArg = Argument.String("new-name");
|
|
39
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to rename within"), Flag.withDefault("."));
|
|
40
40
|
/* v8 ignore stop */
|
|
41
41
|
/**
|
|
42
42
|
* Rename handler; exported for tests.
|
|
@@ -40,8 +40,8 @@ import { Argument, Command, Flag } from "effect/unstable/cli";
|
|
|
40
40
|
* @internal
|
|
41
41
|
*/
|
|
42
42
|
/* v8 ignore start -- CLI option/arg definitions */
|
|
43
|
-
const namesArg = Argument.
|
|
44
|
-
const cwdOption = Flag.
|
|
43
|
+
const namesArg = Argument.String("name").pipe(Argument.variadic());
|
|
44
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to restore within"), Flag.withDefault("."));
|
|
45
45
|
/* v8 ignore stop */
|
|
46
46
|
/**
|
|
47
47
|
* Restore handler; exported for tests.
|
|
@@ -35,9 +35,9 @@ import { Command, Flag } from "effect/unstable/cli";
|
|
|
35
35
|
* @internal
|
|
36
36
|
*/
|
|
37
37
|
/* v8 ignore start -- CLI option definitions */
|
|
38
|
-
const jsonOption = Flag.
|
|
39
|
-
const driftOption = Flag.
|
|
40
|
-
const cwdOption = Flag.
|
|
38
|
+
const jsonOption = Flag.Boolean("json").pipe(Flag.withDescription("Emit the structured drift report as JSON"), Flag.withDefault(false));
|
|
39
|
+
const driftOption = Flag.Boolean("drift").pipe(Flag.withDescription("Also reconcile the manifest, .gitmodules, worktree, and git submodule status"), Flag.withDefault(false));
|
|
40
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to inspect"), Flag.withDefault("."));
|
|
41
41
|
/* v8 ignore stop */
|
|
42
42
|
/**
|
|
43
43
|
* Drift report handler; exported for tests.
|
|
@@ -28,7 +28,7 @@ import { Command, Flag } from "effect/unstable/cli";
|
|
|
28
28
|
* @internal
|
|
29
29
|
*/
|
|
30
30
|
/* v8 ignore start -- CLI option definitions */
|
|
31
|
-
const cwdOption = Flag.
|
|
31
|
+
const cwdOption = Flag.Directory("cwd").pipe(Flag.withDescription("Repo root to sync"), Flag.withDefault("."));
|
|
32
32
|
/* v8 ignore stop */
|
|
33
33
|
/**
|
|
34
34
|
* Sync handler; exported for tests.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@savvy-web/cli",
|
|
3
|
-
"version": "2.11.
|
|
3
|
+
"version": "2.11.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The savvy CLI — unified commit, changeset, and lint commands for the Silk Suite",
|
|
6
6
|
"homepage": "https://github.com/savvy-web/systems/tree/main/packages/cli",
|
|
@@ -31,14 +31,14 @@
|
|
|
31
31
|
"savvy": "bin/savvy.js"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@effect/platform-node": "4.0.0-rc.
|
|
35
|
-
"@effected/commands": "^0.
|
|
36
|
-
"@effected/git": "^0.
|
|
37
|
-
"@effected/jsonc": "^0.
|
|
38
|
-
"@effected/templates": "^0.
|
|
39
|
-
"@effected/workspaces": "^0.
|
|
40
|
-
"@effected/yaml": "^0.
|
|
41
|
-
"@savvy-web/silk-effects": "7.5.
|
|
42
|
-
"effect": "4.0.0-rc.
|
|
34
|
+
"@effect/platform-node": "4.0.0-rc.115",
|
|
35
|
+
"@effected/commands": "^0.7.0",
|
|
36
|
+
"@effected/git": "^0.15.0",
|
|
37
|
+
"@effected/jsonc": "^0.11.0",
|
|
38
|
+
"@effected/templates": "^0.6.0",
|
|
39
|
+
"@effected/workspaces": "^0.21.0",
|
|
40
|
+
"@effected/yaml": "^0.15.0",
|
|
41
|
+
"@savvy-web/silk-effects": "7.5.3",
|
|
42
|
+
"effect": "4.0.0-rc.115"
|
|
43
43
|
}
|
|
44
44
|
}
|