syncpack 10.9.3 → 12.0.0-alpha.0

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.
Files changed (274) hide show
  1. package/dist/bin-fix-mismatches/fix-mismatches.d.ts +15 -3
  2. package/dist/bin-fix-mismatches/fix-mismatches.js +120 -36
  3. package/dist/bin-fix-mismatches/index.js +12 -32
  4. package/dist/bin-format/format.d.ts +11 -3
  5. package/dist/bin-format/format.js +46 -61
  6. package/dist/bin-format/index.js +11 -31
  7. package/dist/bin-lint/index.js +8 -28
  8. package/dist/bin-lint/lint.d.ts +10 -3
  9. package/dist/bin-lint/lint.js +12 -36
  10. package/dist/bin-lint-semver-ranges/index.js +11 -39
  11. package/dist/bin-lint-semver-ranges/lint-semver-ranges.d.ts +15 -3
  12. package/dist/bin-lint-semver-ranges/lint-semver-ranges.js +94 -35
  13. package/dist/bin-list/index.js +11 -31
  14. package/dist/bin-list/list.d.ts +11 -3
  15. package/dist/bin-list/list.js +121 -35
  16. package/dist/bin-list-mismatches/index.js +11 -31
  17. package/dist/bin-list-mismatches/list-mismatches.d.ts +18 -3
  18. package/dist/bin-list-mismatches/list-mismatches.js +254 -35
  19. package/dist/bin-prompt/index.js +15 -31
  20. package/dist/bin-prompt/prompt.d.ts +10 -3
  21. package/dist/bin-prompt/prompt.js +83 -34
  22. package/dist/bin-set-semver-ranges/index.js +12 -40
  23. package/dist/bin-set-semver-ranges/set-semver-ranges.d.ts +10 -3
  24. package/dist/bin-set-semver-ranges/set-semver-ranges.js +50 -36
  25. package/dist/bin-update/effects.d.ts +45 -5
  26. package/dist/bin-update/effects.js +214 -128
  27. package/dist/bin-update/index.js +4 -27
  28. package/dist/bin-update/update.d.ts +5 -3
  29. package/dist/bin-update/update.js +52 -38
  30. package/dist/bin.js +0 -1
  31. package/dist/config/get-custom-types.d.ts +11 -1
  32. package/dist/config/get-custom-types.js +26 -21
  33. package/dist/config/get-enabled-types.d.ts +10 -6
  34. package/dist/config/get-enabled-types.js +84 -66
  35. package/dist/config/get-indent.js +1 -1
  36. package/dist/config/tag.d.ts +3 -0
  37. package/dist/config/tag.js +5 -0
  38. package/dist/config/types.d.ts +8 -11
  39. package/dist/config/types.js +0 -26
  40. package/dist/constants.d.ts +7 -5
  41. package/dist/constants.js +15 -14
  42. package/dist/create-program/effects.d.ts +51 -29
  43. package/dist/error-handlers/default-error-handlers.d.ts +38 -2
  44. package/dist/error-handlers/default-error-handlers.js +83 -35
  45. package/dist/get-context/index.d.ts +12 -6
  46. package/dist/get-context/index.js +13 -30
  47. package/dist/get-context/lib/key-by.d.ts +6 -0
  48. package/dist/get-context/lib/key-by.js +16 -0
  49. package/dist/get-instances/index.d.ts +14 -0
  50. package/dist/get-instances/index.js +46 -0
  51. package/dist/get-instances/instance.d.ts +25 -0
  52. package/dist/get-instances/instance.js +20 -0
  53. package/dist/get-package-json-files/get-file-paths.d.ts +6 -7
  54. package/dist/get-package-json-files/get-file-paths.js +10 -33
  55. package/dist/get-package-json-files/get-patterns/get-lerna-patterns.d.ts +3 -4
  56. package/dist/get-package-json-files/get-patterns/get-lerna-patterns.js +6 -32
  57. package/dist/get-package-json-files/get-patterns/get-pnpm-patterns.d.ts +3 -4
  58. package/dist/get-package-json-files/get-patterns/get-pnpm-patterns.js +6 -32
  59. package/dist/get-package-json-files/get-patterns/get-yarn-patterns.d.ts +3 -4
  60. package/dist/get-package-json-files/get-patterns/get-yarn-patterns.js +11 -40
  61. package/dist/get-package-json-files/get-patterns/index.d.ts +3 -5
  62. package/dist/get-package-json-files/get-patterns/index.js +6 -33
  63. package/dist/get-package-json-files/index.d.ts +6 -5
  64. package/dist/get-package-json-files/index.js +4 -28
  65. package/dist/get-package-json-files/package-json-file.d.ts +16 -16
  66. package/dist/get-package-json-files/package-json-file.js +13 -18
  67. package/dist/guards/can-add-to-group.d.ts +5 -4
  68. package/dist/guards/can-add-to-group.js +40 -6
  69. package/dist/guards/is-semver.d.ts +1 -1
  70. package/dist/guards/is-semver.js +1 -1
  71. package/dist/guards/is-valid-semver-range.d.ts +1 -1
  72. package/dist/guards/is-valid-semver-range.js +1 -1
  73. package/dist/io/ask-for-choice.d.ts +14 -0
  74. package/dist/io/ask-for-choice.js +22 -0
  75. package/dist/io/ask-for-input.d.ts +13 -0
  76. package/dist/io/ask-for-input.js +19 -0
  77. package/dist/io/exit-if-invalid.d.ts +4 -0
  78. package/dist/io/exit-if-invalid.js +13 -0
  79. package/dist/io/glob-sync.d.ts +11 -0
  80. package/dist/io/glob-sync.js +19 -0
  81. package/dist/io/index.d.ts +28 -0
  82. package/dist/{env/exit-if-invalid.js → io/index.js} +27 -9
  83. package/dist/io/read-config-file-sync.d.ts +7 -0
  84. package/dist/io/read-config-file-sync.js +26 -0
  85. package/dist/io/read-file-sync.d.ts +12 -0
  86. package/dist/io/read-file-sync.js +14 -0
  87. package/dist/io/read-json-file-sync.d.ts +30 -0
  88. package/dist/io/read-json-file-sync.js +25 -0
  89. package/dist/io/read-yaml-file-sync.d.ts +12 -0
  90. package/dist/io/read-yaml-file-sync.js +14 -0
  91. package/dist/io/write-file-sync.d.ts +12 -0
  92. package/dist/io/write-file-sync.js +15 -0
  93. package/dist/{env → io}/write-if-changed.d.ts +4 -4
  94. package/dist/io/write-if-changed.js +45 -0
  95. package/dist/lib/get-group-header.d.ts +10 -0
  96. package/dist/lib/get-group-header.js +31 -0
  97. package/dist/lib/get.d.ts +11 -0
  98. package/dist/lib/get.js +40 -0
  99. package/dist/lib/pad-start.d.ts +1 -0
  100. package/dist/lib/pad-start.js +7 -0
  101. package/dist/lib/ring-buffer.d.ts +10 -0
  102. package/dist/lib/ring-buffer.js +22 -0
  103. package/dist/lib/set-semver-range.d.ts +1 -1
  104. package/dist/lib/set-semver-range.js +7 -11
  105. package/dist/lib/with-logger.d.ts +2 -0
  106. package/dist/lib/with-logger.js +35 -0
  107. package/dist/option.d.ts +0 -1
  108. package/dist/option.js +0 -4
  109. package/dist/report.d.ts +166 -0
  110. package/dist/report.js +67 -0
  111. package/dist/schema.json +392 -0
  112. package/dist/semver-group/create-semver-groups.d.ts +4 -0
  113. package/dist/semver-group/create-semver-groups.js +77 -0
  114. package/dist/semver-group/disabled.d.ts +26 -0
  115. package/dist/semver-group/disabled.js +34 -0
  116. package/dist/semver-group/filtered-out.d.ts +27 -0
  117. package/dist/semver-group/filtered-out.js +40 -0
  118. package/dist/semver-group/ignored.d.ts +22 -0
  119. package/dist/semver-group/ignored.js +30 -0
  120. package/dist/semver-group/index.d.ts +22 -0
  121. package/dist/semver-group/index.js +10 -0
  122. package/dist/semver-group/with-range.d.ts +22 -0
  123. package/dist/semver-group/with-range.js +57 -0
  124. package/dist/specifier/alias.d.ts +15 -0
  125. package/dist/specifier/alias.js +25 -0
  126. package/dist/specifier/base.d.ts +39 -0
  127. package/dist/specifier/base.js +38 -0
  128. package/dist/specifier/delete.d.ts +15 -0
  129. package/dist/specifier/delete.js +16 -0
  130. package/dist/specifier/file.d.ts +6 -0
  131. package/dist/specifier/file.js +12 -0
  132. package/dist/specifier/hosted-git.d.ts +13 -0
  133. package/dist/specifier/hosted-git.js +27 -0
  134. package/dist/specifier/index.d.ts +27 -0
  135. package/dist/specifier/index.js +62 -0
  136. package/dist/specifier/lib/non-semver-error.d.ts +11 -0
  137. package/dist/specifier/lib/non-semver-error.js +10 -0
  138. package/dist/specifier/lib/parse-specifier.d.ts +14 -0
  139. package/dist/specifier/lib/parse-specifier.js +23 -0
  140. package/dist/specifier/lib/specific-registry-result.d.ts +9 -0
  141. package/dist/specifier/lib/specific-registry-result.js +2 -0
  142. package/dist/specifier/range.d.ts +18 -0
  143. package/dist/specifier/range.js +26 -0
  144. package/dist/specifier/tag.d.ts +9 -0
  145. package/dist/specifier/tag.js +15 -0
  146. package/dist/specifier/unsupported.d.ts +5 -0
  147. package/dist/specifier/unsupported.js +12 -0
  148. package/dist/specifier/url.d.ts +6 -0
  149. package/dist/specifier/url.js +13 -0
  150. package/dist/specifier/version.d.ts +18 -0
  151. package/dist/specifier/version.js +26 -0
  152. package/dist/specifier/workspace-protocol.d.ts +17 -0
  153. package/dist/specifier/workspace-protocol.js +38 -0
  154. package/dist/strategy/lib/get-non-empty-string-prop.d.ts +2 -2
  155. package/dist/strategy/lib/get-non-empty-string-prop.js +4 -5
  156. package/dist/strategy/name-and-version-props.d.ts +4 -4
  157. package/dist/strategy/name-and-version-props.js +32 -21
  158. package/dist/strategy/named-version-string.d.ts +4 -4
  159. package/dist/strategy/named-version-string.js +22 -24
  160. package/dist/strategy/unnamed-version-string.d.ts +4 -4
  161. package/dist/strategy/unnamed-version-string.js +20 -21
  162. package/dist/strategy/versions-by-name.d.ts +4 -4
  163. package/dist/strategy/versions-by-name.js +9 -11
  164. package/dist/version-group/banned.d.ts +17 -0
  165. package/dist/version-group/banned.js +32 -0
  166. package/dist/version-group/create-version-groups.d.ts +4 -0
  167. package/dist/version-group/create-version-groups.js +107 -0
  168. package/dist/version-group/filtered-out.d.ts +19 -0
  169. package/dist/version-group/filtered-out.js +34 -0
  170. package/dist/version-group/ignored.d.ts +17 -0
  171. package/dist/version-group/ignored.js +27 -0
  172. package/dist/version-group/index.d.ts +28 -0
  173. package/dist/version-group/index.js +10 -0
  174. package/dist/version-group/lib/get-highest-version.d.ts +6 -0
  175. package/dist/version-group/lib/get-highest-version.js +12 -0
  176. package/dist/version-group/lib/get-lowest-version.d.ts +6 -0
  177. package/dist/version-group/lib/get-lowest-version.js +12 -0
  178. package/dist/version-group/lib/get-preferred-version.d.ts +5 -0
  179. package/dist/{get-version-groups/lib/compare-semver.js → version-group/lib/get-preferred-version.js} +14 -2
  180. package/dist/version-group/lib/group-by.d.ts +5 -0
  181. package/dist/{get-version-groups → version-group}/lib/group-by.js +4 -0
  182. package/dist/version-group/pinned.d.ts +17 -0
  183. package/dist/version-group/pinned.js +30 -0
  184. package/dist/version-group/same-range.d.ts +19 -0
  185. package/dist/version-group/same-range.js +108 -0
  186. package/dist/version-group/snapped-to.d.ts +17 -0
  187. package/dist/version-group/snapped-to.js +83 -0
  188. package/dist/version-group/standard.d.ts +18 -0
  189. package/dist/version-group/standard.js +131 -0
  190. package/package.json +28 -25
  191. package/dist/bin-fix-mismatches/effects.d.ts +0 -2
  192. package/dist/bin-fix-mismatches/effects.js +0 -112
  193. package/dist/bin-format/format-cli.d.ts +0 -4
  194. package/dist/bin-format/format-cli.js +0 -42
  195. package/dist/bin-lint-semver-ranges/effects.d.ts +0 -2
  196. package/dist/bin-lint-semver-ranges/effects.js +0 -70
  197. package/dist/bin-list/effects.d.ts +0 -2
  198. package/dist/bin-list/effects.js +0 -114
  199. package/dist/bin-list-mismatches/effects.d.ts +0 -2
  200. package/dist/bin-list-mismatches/effects.js +0 -136
  201. package/dist/bin-prompt/effects.d.ts +0 -2
  202. package/dist/bin-prompt/effects.js +0 -110
  203. package/dist/bin-set-semver-ranges/effects.d.ts +0 -2
  204. package/dist/bin-set-semver-ranges/effects.js +0 -61
  205. package/dist/config/get-semver-range.d.ts +0 -3
  206. package/dist/config/get-semver-range.js +0 -12
  207. package/dist/create-program/semver-ranges.d.ts +0 -7
  208. package/dist/create-program/semver-ranges.js +0 -55
  209. package/dist/create-program/versions.d.ts +0 -7
  210. package/dist/create-program/versions.js +0 -70
  211. package/dist/env/create-env.d.ts +0 -21
  212. package/dist/env/create-env.js +0 -81
  213. package/dist/env/default-env.d.ts +0 -18
  214. package/dist/env/default-env.js +0 -96
  215. package/dist/env/exit-if-invalid.d.ts +0 -4
  216. package/dist/env/tags.d.ts +0 -58
  217. package/dist/env/tags.js +0 -50
  218. package/dist/env/write-if-changed.js +0 -73
  219. package/dist/error-handlers/create-error-handlers.d.ts +0 -19
  220. package/dist/error-handlers/create-error-handlers.js +0 -57
  221. package/dist/get-package-json-files/get-patterns/read-json-safe.d.ts +0 -23
  222. package/dist/get-package-json-files/get-patterns/read-json-safe.js +0 -43
  223. package/dist/get-semver-groups/filtered-out.d.ts +0 -19
  224. package/dist/get-semver-groups/filtered-out.js +0 -55
  225. package/dist/get-semver-groups/ignored.d.ts +0 -17
  226. package/dist/get-semver-groups/ignored.js +0 -48
  227. package/dist/get-semver-groups/index.d.ts +0 -84
  228. package/dist/get-semver-groups/index.js +0 -139
  229. package/dist/get-semver-groups/with-range.d.ts +0 -18
  230. package/dist/get-semver-groups/with-range.js +0 -79
  231. package/dist/get-version-groups/banned.d.ts +0 -17
  232. package/dist/get-version-groups/banned.js +0 -50
  233. package/dist/get-version-groups/filtered-out.d.ts +0 -19
  234. package/dist/get-version-groups/filtered-out.js +0 -57
  235. package/dist/get-version-groups/ignored.d.ts +0 -17
  236. package/dist/get-version-groups/ignored.js +0 -50
  237. package/dist/get-version-groups/index.d.ts +0 -187
  238. package/dist/get-version-groups/index.js +0 -246
  239. package/dist/get-version-groups/lib/compare-semver.d.ts +0 -1
  240. package/dist/get-version-groups/lib/get-highest-version.d.ts +0 -2
  241. package/dist/get-version-groups/lib/get-highest-version.js +0 -13
  242. package/dist/get-version-groups/lib/get-lowest-version.d.ts +0 -2
  243. package/dist/get-version-groups/lib/get-lowest-version.js +0 -13
  244. package/dist/get-version-groups/lib/get-unique-specifiers.d.ts +0 -2
  245. package/dist/get-version-groups/lib/get-unique-specifiers.js +0 -11
  246. package/dist/get-version-groups/lib/group-by.d.ts +0 -1
  247. package/dist/get-version-groups/pinned.d.ts +0 -17
  248. package/dist/get-version-groups/pinned.js +0 -66
  249. package/dist/get-version-groups/same-range.d.ts +0 -17
  250. package/dist/get-version-groups/same-range.js +0 -73
  251. package/dist/get-version-groups/snapped-to.d.ts +0 -17
  252. package/dist/get-version-groups/snapped-to.js +0 -78
  253. package/dist/get-version-groups/standard.d.ts +0 -18
  254. package/dist/get-version-groups/standard.js +0 -109
  255. package/dist/guards/is-loose-semver.d.ts +0 -2
  256. package/dist/guards/is-loose-semver.js +0 -10
  257. package/dist/instance/create.d.ts +0 -4
  258. package/dist/instance/create.js +0 -142
  259. package/dist/instance/index.d.ts +0 -122
  260. package/dist/instance/index.js +0 -154
  261. package/dist/lib/$R.d.ts +0 -12
  262. package/dist/lib/$R.js +0 -34
  263. package/dist/lib/log-group-header.d.ts +0 -6
  264. package/dist/lib/log-group-header.js +0 -34
  265. package/dist/lib/log-verbose.d.ts +0 -1
  266. package/dist/lib/log-verbose.js +0 -24
  267. package/dist/lib/split-name-and-version.d.ts +0 -5
  268. package/dist/lib/split-name-and-version.js +0 -12
  269. /package/dist/{get-version-groups → version-group}/lib/clean.d.ts +0 -0
  270. /package/dist/{get-version-groups → version-group}/lib/clean.js +0 -0
  271. /package/dist/{get-version-groups → version-group}/lib/delete.d.ts +0 -0
  272. /package/dist/{get-version-groups → version-group}/lib/delete.js +0 -0
  273. /package/dist/{get-version-groups → version-group}/lib/get-range-score.d.ts +0 -0
  274. /package/dist/{get-version-groups → version-group}/lib/get-range-score.js +0 -0
@@ -1,36 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
8
- }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
- Object.defineProperty(o, "default", { enumerable: true, value: v });
16
- }) : function(o, v) {
17
- o["default"] = v;
18
- });
19
- var __importStar = (this && this.__importStar) || function (mod) {
20
- if (mod && mod.__esModule) return mod;
21
- var result = {};
22
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
- __setModuleDefault(result, mod);
24
- return result;
25
- };
26
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
27
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
28
5
  };
29
6
  Object.defineProperty(exports, "__esModule", { value: true });
30
- const Effect = __importStar(require("@effect/io/Effect"));
31
7
  const chalk_1 = __importDefault(require("chalk"));
32
8
  const commander_1 = require("commander");
33
- const default_env_1 = require("../env/default-env");
9
+ const effect_1 = require("effect");
10
+ const io_1 = require("../io");
34
11
  const show_help_on_error_1 = require("../lib/show-help-on-error");
35
12
  const option_1 = require("../option");
36
13
  const lint_semver_ranges_1 = require("./lint-semver-ranges");
@@ -48,12 +25,6 @@ Examples:
48
25
  syncpack lint-semver-ranges --source {yellow "apps/*/package.json"} --source {yellow "core/*/package.json"}
49
26
  {dim # uses dependencies regular expression defined by --filter when provided}
50
27
  syncpack lint-semver-ranges --filter {yellow "typescript|tslint"}
51
- {dim # use ~ range instead of default ""}
52
- syncpack lint-semver-ranges --semver-range ~
53
- {dim # use ~ range in "devDependencies"}
54
- syncpack lint-semver-ranges --types dev --semver-range ~
55
- {dim # use ~ range in "devDependencies" and "peerDependencies"}
56
- syncpack lint-semver-ranges --types dev,peer semver-range ~
57
28
 
58
29
  Supported Ranges:
59
30
  < {dim <1.4.2}
@@ -83,14 +54,15 @@ Reference:
83
54
  commander_1.program
84
55
  .option(...option_1.option.source)
85
56
  .option(...option_1.option.filter)
86
- .option(...option_1.option.semverRange)
87
57
  .option(...option_1.option.config)
88
58
  .option(...option_1.option.types)
89
59
  .parse(process.argv);
90
- Effect.runSync((0, lint_semver_ranges_1.lintSemverRanges)({
91
- configPath: commander_1.program.opts().config,
92
- filter: commander_1.program.opts().filter,
93
- semverRange: commander_1.program.opts().semverRange,
94
- source: commander_1.program.opts().source,
95
- types: commander_1.program.opts().types,
96
- }, default_env_1.defaultEnv));
60
+ effect_1.Effect.runSync((0, lint_semver_ranges_1.lintSemverRanges)({
61
+ io: io_1.io,
62
+ cli: {
63
+ configPath: commander_1.program.opts().config,
64
+ filter: commander_1.program.opts().filter,
65
+ source: commander_1.program.opts().source,
66
+ types: commander_1.program.opts().types,
67
+ },
68
+ }));
@@ -1,4 +1,16 @@
1
- import * as Effect from '@effect/io/Effect';
1
+ import { Effect } from 'effect';
2
2
  import { type CliConfig } from '../config/types';
3
- import type { DefaultEnv } from '../env/default-env';
4
- export declare function lintSemverRanges(cli: Partial<CliConfig>, env: DefaultEnv): Effect.Effect<never, never, void | import("../get-context").Ctx>;
3
+ import type { ErrorHandlers } from '../error-handlers/default-error-handlers';
4
+ import type { Ctx } from '../get-context';
5
+ import type { Io } from '../io';
6
+ interface Input {
7
+ io: Io;
8
+ cli: Partial<CliConfig>;
9
+ errorHandlers?: ErrorHandlers;
10
+ }
11
+ export declare function lintSemverRanges({ io, cli, errorHandlers }: Input): Effect.Effect<never, never, unknown>;
12
+ /** Exported to be reused by `syncpack lint` */
13
+ export declare function pipeline(ctx: Ctx, io: Io, errorHandlers: ErrorHandlers): Effect.Effect<never, never, Ctx>;
14
+ export declare function logSemverGroupsDisabledWarning(): Effect.Effect<never, never, void>;
15
+ export declare function logIgnoredSize(amount: number): Effect.Effect<never, never, void>;
16
+ export {};
@@ -1,42 +1,101 @@
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
4
  };
25
5
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.lintSemverRanges = void 0;
27
- const Context = __importStar(require("@effect/data/Context"));
28
- const Function_1 = require("@effect/data/Function");
29
- const Effect = __importStar(require("@effect/io/Effect"));
30
- const types_1 = require("../config/types");
31
- const semver_ranges_1 = require("../create-program/semver-ranges");
32
- const create_env_1 = require("../env/create-env");
33
- const exit_if_invalid_1 = require("../env/exit-if-invalid");
34
- const tags_1 = require("../env/tags");
35
- const create_error_handlers_1 = require("../error-handlers/create-error-handlers");
6
+ exports.logIgnoredSize = exports.logSemverGroupsDisabledWarning = exports.pipeline = exports.lintSemverRanges = void 0;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const effect_1 = require("effect");
9
+ const os_1 = require("os");
10
+ const is_non_empty_array_1 = require("tightrope/guard/is-non-empty-array");
11
+ const tag_1 = require("../config/tag");
12
+ const constants_1 = require("../constants");
36
13
  const default_error_handlers_1 = require("../error-handlers/default-error-handlers");
37
14
  const get_context_1 = require("../get-context");
38
- const effects_1 = require("./effects");
39
- function lintSemverRanges(cli, env) {
40
- return (0, Function_1.pipe)((0, get_context_1.getContext)(), Effect.flatMap((ctx) => (0, semver_ranges_1.createSemverRangesProgram)(ctx, effects_1.lintSemverRangesEffects)), Effect.flatMap(exit_if_invalid_1.exitIfInvalid), Effect.catchTags((0, create_error_handlers_1.createErrorHandlers)(default_error_handlers_1.defaultErrorHandlers)), Effect.provideContext((0, Function_1.pipe)(Context.empty(), Context.add(types_1.CliConfigTag, cli), Context.add(tags_1.EnvTag, (0, create_env_1.createEnv)(env)))));
15
+ const get_instances_1 = require("../get-instances");
16
+ const io_1 = require("../io");
17
+ const exit_if_invalid_1 = require("../io/exit-if-invalid");
18
+ const get_group_header_1 = require("../lib/get-group-header");
19
+ const pad_start_1 = require("../lib/pad-start");
20
+ const with_logger_1 = require("../lib/with-logger");
21
+ function lintSemverRanges({ io, cli, errorHandlers = default_error_handlers_1.defaultErrorHandlers }) {
22
+ return (0, effect_1.pipe)((0, get_context_1.getContext)({ io, cli, errorHandlers }), effect_1.Effect.flatMap((ctx) => pipeline(ctx, io, errorHandlers)), effect_1.Effect.flatMap(exit_if_invalid_1.exitIfInvalid), effect_1.Effect.provide((0, effect_1.pipe)(effect_1.Context.empty(), effect_1.Context.add(tag_1.CliConfigTag, cli), effect_1.Context.add(io_1.IoTag, io))), with_logger_1.withLogger);
41
23
  }
42
24
  exports.lintSemverRanges = lintSemverRanges;
25
+ /** Exported to be reused by `syncpack lint` */
26
+ function pipeline(ctx, io, errorHandlers) {
27
+ return effect_1.Effect.gen(function* ($) {
28
+ // no semver groups have been configured, they are disabled by default
29
+ if (!(0, is_non_empty_array_1.isNonEmptyArray)(ctx.config.rcFile.semverGroups)) {
30
+ yield* $(logSemverGroupsDisabledWarning());
31
+ return ctx;
32
+ }
33
+ const { semverGroups } = yield* $((0, get_instances_1.getInstances)(ctx, io, errorHandlers));
34
+ let index = 0;
35
+ for (const group of semverGroups) {
36
+ const groupSize = group.instances.length;
37
+ let validCount = 0;
38
+ if (group._tag === 'Ignored') {
39
+ yield* $(effect_1.Effect.logInfo((0, get_group_header_1.getSemverGroupHeader)({ group, index })));
40
+ yield* $(logIgnoredSize(groupSize));
41
+ }
42
+ else if (group._tag === 'WithRange') {
43
+ yield* $(effect_1.Effect.logInfo((0, get_group_header_1.getSemverGroupHeader)({ group, index })));
44
+ for (const instance of group.instances) {
45
+ const report = yield* $(group.inspect(instance));
46
+ if (report._tag === 'SemverRangeMismatch') {
47
+ ctx.isInvalid = true;
48
+ yield* $(logSemverRangeMismatch(report));
49
+ }
50
+ else if (report._tag === 'UnsupportedMismatch') {
51
+ ctx.isInvalid = true;
52
+ yield* $(logUnsupportedMismatch(report));
53
+ }
54
+ else {
55
+ validCount++;
56
+ }
57
+ }
58
+ }
59
+ if (validCount > 0)
60
+ yield* $(logValidSize(validCount));
61
+ index++;
62
+ }
63
+ return ctx;
64
+ });
65
+ }
66
+ exports.pipeline = pipeline;
67
+ function logSemverGroupsDisabledWarning() {
68
+ return effect_1.Effect.logInfo([
69
+ (0, chalk_1.default) `{red ${constants_1.ICON.panic} it looks like semver ranges have not yet been configured for this project}`,
70
+ (0, chalk_1.default) ` {red see the guide at} {yellow https://jamiemason.github.io/syncpack/guide/semver-groups}`,
71
+ ].join(os_1.EOL));
72
+ }
73
+ exports.logSemverGroupsDisabledWarning = logSemverGroupsDisabledWarning;
74
+ function logIgnoredSize(amount) {
75
+ const msg = (0, chalk_1.default) `${(0, pad_start_1.padStart)(amount)} {dim ${constants_1.ICON.skip}} ${amount} ignored`;
76
+ return effect_1.Effect.logInfo(msg);
77
+ }
78
+ exports.logIgnoredSize = logIgnoredSize;
79
+ function logValidSize(amount) {
80
+ const msg = (0, chalk_1.default) `{green ${constants_1.ICON.tick}} {dim ${amount} valid}`;
81
+ return effect_1.Effect.logInfo(msg);
82
+ }
83
+ function logSemverRangeMismatch(report) {
84
+ const _tag = report._tag;
85
+ const instance = report.fixable.instance;
86
+ const name = instance.name;
87
+ const actual = instance.rawSpecifier;
88
+ const expected = report.fixable.raw;
89
+ const propPath = instance.strategy.path;
90
+ const filePath = instance.packageJsonFile.jsonFile.shortPath;
91
+ return effect_1.Effect.logInfo((0, chalk_1.default) `{red ${constants_1.ICON.cross}} ${name} {red ${actual}} {dim ${constants_1.ICON.rightArrow}} {green ${expected}} {gray ${filePath} > ${propPath}} {gray.dim [${_tag}]}`);
92
+ }
93
+ function logUnsupportedMismatch(report) {
94
+ const _tag = report._tag;
95
+ const instance = report.unfixable;
96
+ const name = instance.name;
97
+ const actual = instance.rawSpecifier;
98
+ const propPath = instance.strategy.path;
99
+ const filePath = instance.packageJsonFile.jsonFile.shortPath;
100
+ return effect_1.Effect.logInfo((0, chalk_1.default) `{red ${constants_1.ICON.cross} name {white ${name}} or version {white ${actual}} are not supported} {gray ${filePath} > ${propPath}} {gray.dim [${_tag}]}`);
101
+ }
@@ -1,36 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
8
- }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
- Object.defineProperty(o, "default", { enumerable: true, value: v });
16
- }) : function(o, v) {
17
- o["default"] = v;
18
- });
19
- var __importStar = (this && this.__importStar) || function (mod) {
20
- if (mod && mod.__esModule) return mod;
21
- var result = {};
22
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
- __setModuleDefault(result, mod);
24
- return result;
25
- };
26
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
27
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
28
5
  };
29
6
  Object.defineProperty(exports, "__esModule", { value: true });
30
- const Effect = __importStar(require("@effect/io/Effect"));
31
7
  const chalk_1 = __importDefault(require("chalk"));
32
8
  const commander_1 = require("commander");
33
- const default_env_1 = require("../env/default-env");
9
+ const effect_1 = require("effect");
10
+ const io_1 = require("../io");
34
11
  const show_help_on_error_1 = require("../lib/show-help-on-error");
35
12
  const option_1 = require("../option");
36
13
  const list_1 = require("./list");
@@ -72,9 +49,12 @@ commander_1.program
72
49
  .option(...option_1.option.config)
73
50
  .option(...option_1.option.types)
74
51
  .parse(process.argv);
75
- Effect.runSync((0, list_1.list)({
76
- configPath: commander_1.program.opts().config,
77
- filter: commander_1.program.opts().filter,
78
- source: commander_1.program.opts().source,
79
- types: commander_1.program.opts().types,
80
- }, default_env_1.defaultEnv));
52
+ effect_1.Effect.runSync((0, list_1.list)({
53
+ io: io_1.io,
54
+ cli: {
55
+ configPath: commander_1.program.opts().config,
56
+ filter: commander_1.program.opts().filter,
57
+ source: commander_1.program.opts().source,
58
+ types: commander_1.program.opts().types,
59
+ },
60
+ }));
@@ -1,4 +1,12 @@
1
- import * as Effect from '@effect/io/Effect';
1
+ import { Effect } from 'effect';
2
2
  import { type CliConfig } from '../config/types';
3
- import type { DefaultEnv } from '../env/default-env';
4
- export declare function list(cli: Partial<CliConfig>, env: DefaultEnv): Effect.Effect<never, never, void | import("../get-context").Ctx>;
3
+ import type { ErrorHandlers } from '../error-handlers/default-error-handlers';
4
+ import type { Io } from '../io';
5
+ interface Input {
6
+ io: Io;
7
+ cli: Partial<CliConfig>;
8
+ errorHandlers?: ErrorHandlers;
9
+ }
10
+ export declare function list({ io, cli, errorHandlers }: Input): Effect.Effect<never, never, unknown>;
11
+ export declare function logOtherCommands(): Effect.Effect<never, never, void>;
12
+ export {};
@@ -1,42 +1,128 @@
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
4
  };
25
5
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.list = void 0;
27
- const Context = __importStar(require("@effect/data/Context"));
28
- const Function_1 = require("@effect/data/Function");
29
- const Effect = __importStar(require("@effect/io/Effect"));
30
- const types_1 = require("../config/types");
31
- const versions_1 = require("../create-program/versions");
32
- const create_env_1 = require("../env/create-env");
33
- const exit_if_invalid_1 = require("../env/exit-if-invalid");
34
- const tags_1 = require("../env/tags");
35
- const create_error_handlers_1 = require("../error-handlers/create-error-handlers");
6
+ exports.logOtherCommands = exports.list = void 0;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const effect_1 = require("effect");
9
+ const os_1 = require("os");
10
+ const tag_1 = require("../config/tag");
11
+ const constants_1 = require("../constants");
36
12
  const default_error_handlers_1 = require("../error-handlers/default-error-handlers");
37
13
  const get_context_1 = require("../get-context");
38
- const effects_1 = require("./effects");
39
- function list(cli, env) {
40
- return (0, Function_1.pipe)((0, get_context_1.getContext)(), Effect.flatMap((ctx) => (0, versions_1.createVersionsProgram)(ctx, effects_1.listEffects)), Effect.flatMap(exit_if_invalid_1.exitIfInvalid), Effect.catchTags((0, create_error_handlers_1.createErrorHandlers)(default_error_handlers_1.defaultErrorHandlers)), Effect.provideContext((0, Function_1.pipe)(Context.empty(), Context.add(types_1.CliConfigTag, cli), Context.add(tags_1.EnvTag, (0, create_env_1.createEnv)(env)))));
14
+ const get_instances_1 = require("../get-instances");
15
+ const io_1 = require("../io");
16
+ const exit_if_invalid_1 = require("../io/exit-if-invalid");
17
+ const get_group_header_1 = require("../lib/get-group-header");
18
+ const pad_start_1 = require("../lib/pad-start");
19
+ const with_logger_1 = require("../lib/with-logger");
20
+ function list({ io, cli, errorHandlers = default_error_handlers_1.defaultErrorHandlers }) {
21
+ return (0, effect_1.pipe)((0, get_context_1.getContext)({ io, cli, errorHandlers }), effect_1.Effect.flatMap((ctx) => effect_1.Effect.gen(function* ($) {
22
+ const { versionGroups } = yield* $((0, get_instances_1.getInstances)(ctx, io, errorHandlers));
23
+ let index = 0;
24
+ for (const group of versionGroups) {
25
+ const groupSize = group.instances.length;
26
+ if (group._tag === 'FilteredOut') {
27
+ index++;
28
+ continue;
29
+ }
30
+ yield* $(effect_1.Effect.logInfo((0, get_group_header_1.getVersionGroupHeader)({ group, index })));
31
+ if (group._tag === 'Ignored') {
32
+ const usages = `${(0, pad_start_1.padStart)(groupSize)}x`;
33
+ const msg = (0, chalk_1.default) `{gray ${usages} ignored}`;
34
+ yield* $(effect_1.Effect.logInfo(msg));
35
+ index++;
36
+ continue;
37
+ }
38
+ if (group._tag === 'Banned') {
39
+ for (const groupReport of yield* $(group.inspectAll())) {
40
+ const name = groupReport.name;
41
+ const usages = `${(0, pad_start_1.padStart)(groupReport.reports.length)}x`;
42
+ const invalidLabel = (0, chalk_1.default) `{gray ${usages}} {red ${name}}{gray :}`;
43
+ const msg = (0, chalk_1.default) `${invalidLabel} {red banned}`;
44
+ yield* $(effect_1.Effect.logInfo(msg));
45
+ }
46
+ ctx.isInvalid = true;
47
+ index++;
48
+ continue;
49
+ }
50
+ for (const groupReport of yield* $(group.inspectAll())) {
51
+ const matches = new Set();
52
+ const mismatches = new Set();
53
+ for (const report of groupReport.reports) {
54
+ const _tag = report._tag;
55
+ if (_tag === 'Valid') {
56
+ const actual = report.specifier.raw;
57
+ matches.add(report.specifier._tag === 'UnsupportedSpecifier'
58
+ ? (0, chalk_1.default) `{gray ${actual}} {gray.dim [UnsupportedSpecifier]}`
59
+ : (0, chalk_1.default) `{gray ${actual}}`);
60
+ }
61
+ else if (_tag === 'HighestSemverMismatch' ||
62
+ _tag === 'LocalPackageMismatch' ||
63
+ _tag === 'LowestSemverMismatch' ||
64
+ _tag === 'PinnedMismatch' ||
65
+ _tag === 'SemverRangeMismatch' ||
66
+ _tag === 'SnappedToMismatch') {
67
+ mismatches.add(getLogForFixable(report));
68
+ ctx.isInvalid = true;
69
+ }
70
+ else if (_tag === 'MissingLocalVersion' ||
71
+ _tag === 'MissingSnappedToMismatch' ||
72
+ _tag === 'UnsupportedMismatch' ||
73
+ _tag === 'SameRangeMismatch') {
74
+ mismatches.add(getLogForUnfixable(report));
75
+ ctx.isInvalid = true;
76
+ }
77
+ }
78
+ if (mismatches.size === 0) {
79
+ yield* $(logMatchingReport(groupReport, matches));
80
+ }
81
+ else {
82
+ yield* $(logMismatchingReport(groupReport, mismatches));
83
+ }
84
+ }
85
+ index++;
86
+ }
87
+ yield* $(logOtherCommands());
88
+ return ctx;
89
+ })), effect_1.Effect.flatMap(exit_if_invalid_1.exitIfInvalid), effect_1.Effect.provide((0, effect_1.pipe)(effect_1.Context.empty(), effect_1.Context.add(tag_1.CliConfigTag, cli), effect_1.Context.add(io_1.IoTag, io))), with_logger_1.withLogger);
41
90
  }
42
91
  exports.list = list;
92
+ function logMatchingReport(groupReport, messages) {
93
+ const name = groupReport.name;
94
+ const usages = `${(0, pad_start_1.padStart)(groupReport.reports.length)}x`;
95
+ const label = (0, chalk_1.default) `{gray ${usages}} ${name}{gray :}`;
96
+ return effect_1.Effect.logInfo((0, chalk_1.default) `${label} ${[...messages].join((0, chalk_1.default) `{gray , }`)}`);
97
+ }
98
+ function logMismatchingReport(groupReport, messages) {
99
+ const name = groupReport.name;
100
+ const usages = `${(0, pad_start_1.padStart)(groupReport.reports.length)}x`;
101
+ const label = (0, chalk_1.default) `{gray ${usages}} {red ${name}}{gray :}`;
102
+ const indent = usages.replace(/./g, ' ');
103
+ return effect_1.Effect.logInfo((0, chalk_1.default) `${label}${['', ...messages].join((0, chalk_1.default) `${os_1.EOL}${indent} {red ${constants_1.ICON.cross}} `)}`);
104
+ }
105
+ function getLogForFixable(report) {
106
+ const _tag = report._tag;
107
+ const actual = report.fixable.instance.rawSpecifier;
108
+ const expected = report.fixable.raw;
109
+ return (0, chalk_1.default) `{red ${actual}} {gray ${constants_1.ICON.rightArrow}} {green ${expected}} {gray.dim [${_tag}]}`;
110
+ }
111
+ function getLogForUnfixable(report) {
112
+ const _tag = report._tag;
113
+ const actual = report.unfixable.rawSpecifier;
114
+ return (0, chalk_1.default) `{red ${actual}} {gray ${constants_1.ICON.rightArrow}} {gray.dim [${_tag}]}`;
115
+ }
116
+ function logOtherCommands() {
117
+ return effect_1.Effect.logInfo([
118
+ '',
119
+ ' What next?',
120
+ (0, chalk_1.default) `{dim -} {yellow syncpack list-mismatches} to see more detail about mismatching versions`,
121
+ (0, chalk_1.default) `{dim -} {yellow syncpack fix-mismatches} to fix version mismatches automatically`,
122
+ (0, chalk_1.default) `{dim -} {yellow syncpack format} to sort and prettify your package.json files`,
123
+ (0, chalk_1.default) `{dim -} {yellow syncpack update} to choose updates from the npm registry`,
124
+ (0, chalk_1.default) `{dim -} {yellow syncpack --help} for everything else`,
125
+ '',
126
+ ].join(os_1.EOL));
127
+ }
128
+ exports.logOtherCommands = logOtherCommands;
@@ -1,36 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
8
- }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
- Object.defineProperty(o, "default", { enumerable: true, value: v });
16
- }) : function(o, v) {
17
- o["default"] = v;
18
- });
19
- var __importStar = (this && this.__importStar) || function (mod) {
20
- if (mod && mod.__esModule) return mod;
21
- var result = {};
22
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
- __setModuleDefault(result, mod);
24
- return result;
25
- };
26
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
27
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
28
5
  };
29
6
  Object.defineProperty(exports, "__esModule", { value: true });
30
- const Effect = __importStar(require("@effect/io/Effect"));
31
7
  const chalk_1 = __importDefault(require("chalk"));
32
8
  const commander_1 = require("commander");
33
- const default_env_1 = require("../env/default-env");
9
+ const effect_1 = require("effect");
10
+ const io_1 = require("../io");
34
11
  const show_help_on_error_1 = require("../lib/show-help-on-error");
35
12
  const option_1 = require("../option");
36
13
  const list_mismatches_1 = require("./list-mismatches");
@@ -74,9 +51,12 @@ commander_1.program
74
51
  .option(...option_1.option.config)
75
52
  .option(...option_1.option.types)
76
53
  .parse(process.argv);
77
- Effect.runSync((0, list_mismatches_1.listMismatches)({
78
- configPath: commander_1.program.opts().config,
79
- filter: commander_1.program.opts().filter,
80
- source: commander_1.program.opts().source,
81
- types: commander_1.program.opts().types,
82
- }, default_env_1.defaultEnv));
54
+ effect_1.Effect.runSync((0, list_mismatches_1.listMismatches)({
55
+ io: io_1.io,
56
+ cli: {
57
+ configPath: commander_1.program.opts().config,
58
+ filter: commander_1.program.opts().filter,
59
+ source: commander_1.program.opts().source,
60
+ types: commander_1.program.opts().types,
61
+ },
62
+ }));
@@ -1,4 +1,19 @@
1
- import * as Effect from '@effect/io/Effect';
1
+ import { Effect } from 'effect';
2
2
  import { type CliConfig } from '../config/types';
3
- import type { DefaultEnv } from '../env/default-env';
4
- export declare function listMismatches(cli: Partial<CliConfig>, env: DefaultEnv): Effect.Effect<never, never, void | import("../get-context").Ctx>;
3
+ import type { ErrorHandlers } from '../error-handlers/default-error-handlers';
4
+ import type { Ctx } from '../get-context';
5
+ import type { Io } from '../io';
6
+ import type { Report } from '../report';
7
+ interface Input {
8
+ io: Io;
9
+ cli: Partial<CliConfig>;
10
+ errorHandlers?: ErrorHandlers;
11
+ }
12
+ export declare function listMismatches({ io, cli, errorHandlers }: Input): Effect.Effect<never, never, unknown>;
13
+ /** Exported to be reused by `syncpack lint` */
14
+ export declare function pipeline(ctx: Ctx, io: Io, errorHandlers: ErrorHandlers): Effect.Effect<never, never, Ctx>;
15
+ export declare function logMissingLocalVersion(report: Report.MissingLocalVersion): Effect.Effect<never, never, void>;
16
+ export declare function logMissingSnappedToMismatch(report: Report.MissingSnappedToMismatch): Effect.Effect<never, never, void>;
17
+ export declare function logUnsupportedMismatch(report: Report.UnsupportedMismatch): Effect.Effect<never, never, void>;
18
+ export declare function logSameRangeMismatch(report: Report.SameRangeMismatch): Effect.Effect<never, never, void>;
19
+ export {};