@appland/appmap 3.65.0 → 3.65.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,19 @@
1
+ # [@appland/appmap-v3.65.2](https://github.com/getappmap/appmap-js/compare/@appland/appmap-v3.65.1...@appland/appmap-v3.65.2) (2023-02-13)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * Update @appland/models and @appland/openapi ([03b001b](https://github.com/getappmap/appmap-js/commit/03b001b34ec3e5f415107c14e9a582a8f3b83374))
7
+
8
+ # [@appland/appmap-v3.65.1](https://github.com/getappmap/appmap-js/compare/@appland/appmap-v3.65.0...@appland/appmap-v3.65.1) (2023-02-07)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * add @appland/client dependency ([9bd2b6f](https://github.com/getappmap/appmap-js/commit/9bd2b6f5bec5a99a1f3e1416a6a1c28e7644d805))
14
+ * Detect yarn packages as sub-projects ([17871e3](https://github.com/getappmap/appmap-js/commit/17871e3f3e9f693391b179d209383d77fdc0ba21))
15
+ * Improve detection for yarn 1. ([013004a](https://github.com/getappmap/appmap-js/commit/013004a03b59c876bc8b51f01828183e0338425e))
16
+
1
17
  # [@appland/appmap-v3.65.0](https://github.com/getappmap/appmap-js/compare/@appland/appmap-v3.64.3...@appland/appmap-v3.65.0) (2023-02-06)
2
18
 
3
19
 
@@ -11,6 +11,8 @@ const commandRunner_1 = require("./commandRunner");
11
11
  const agentInstaller_1 = __importDefault(require("./agentInstaller"));
12
12
  const chalk_1 = __importDefault(require("chalk"));
13
13
  const commandStruct_1 = __importDefault(require("./commandStruct"));
14
+ const errors_1 = require("../errors");
15
+ const semver_1 = __importDefault(require("semver"));
14
16
  const AGENT_PACKAGE = '@appland/appmap-agent-js@latest';
15
17
  class JavaScriptInstaller extends agentInstaller_1.default {
16
18
  constructor(name, path) {
@@ -87,6 +89,21 @@ class YarnInstaller extends JavaScriptInstaller {
87
89
  async verifyCommand() {
88
90
  return undefined;
89
91
  }
92
+ async isYarnVersionOne() {
93
+ let isVersionOne;
94
+ try {
95
+ const versionOutput = await (0, commandUtil_1.getOutput)('yarn', ['--version'], this.path);
96
+ const version = semver_1.default.coerce(versionOutput.output);
97
+ if (!version) {
98
+ throw new errors_1.UserConfigError('Could not detect yarn version');
99
+ }
100
+ isVersionOne = !semver_1.default.satisfies(version, '>= 2.0.0');
101
+ }
102
+ catch (err) {
103
+ throw new errors_1.UserConfigError(err);
104
+ }
105
+ return isVersionOne;
106
+ }
90
107
  }
91
108
  exports.YarnInstaller = YarnInstaller;
92
109
  YarnInstaller.identifier = 'yarn';
@@ -1 +1 @@
1
- {"version":3,"file":"javaScriptAgentInstaller.js","sourceRoot":"","sources":["../../../src/cmds/agentInstaller/javaScriptAgentInstaller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"javaScriptAgentInstaller.js","sourceRoot":"","sources":["../../../src/cmds/agentInstaller/javaScriptAgentInstaller.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getProjects = void 0;
6
+ exports.getProjects = exports.getYarnSubprojects = void 0;
7
+ const assert_1 = __importDefault(require("assert"));
7
8
  const chalk_1 = __importDefault(require("chalk"));
8
9
  const fs_1 = require("fs");
9
10
  const path_1 = require("path");
10
11
  const errors_1 = require("../errors");
11
12
  const userInteraction_1 = __importDefault(require("../userInteraction"));
12
13
  const installers_1 = __importDefault(require("./installers"));
14
+ const javaScriptAgentInstaller_1 = require("./javaScriptAgentInstaller");
15
+ const commandStruct_1 = __importDefault(require("./commandStruct"));
16
+ const commandRunner_1 = require("./commandRunner");
13
17
  async function resolveSelectedInstallers(projects, userSpecifiedInstaller) {
14
18
  // Attempt to resolve selectedInstallers from the user's arg line input.
15
19
  if (userSpecifiedInstaller) {
@@ -59,11 +63,96 @@ async function resolveSelectedInstallers(projects, userSpecifiedInstaller) {
59
63
  }
60
64
  }
61
65
  }
62
- // Sanity check. Verify everything resolved properly. This should branch should never occur.
66
+ // Sanity check. Verify everything resolved properly. This branch should never occur.
63
67
  if (projects.some(({ selectedInstaller }) => !selectedInstaller)) {
64
68
  throw new Error('Invalid selection');
65
69
  }
66
70
  }
71
+ function yarn1Workspaces(info) {
72
+ (0, assert_1.default)(info && typeof info === 'object');
73
+ return Object.entries(info).map(([name, data]) => {
74
+ (0, assert_1.default)(data && typeof data === 'object');
75
+ (0, assert_1.default)('location' in data);
76
+ (0, assert_1.default)(typeof data['location'] === 'string');
77
+ return [name, data['location']];
78
+ });
79
+ }
80
+ // With yarn 1:
81
+ // - if there's no "workspaces" key in package.json we get the following error:
82
+ // $ yarn workspaces info --json
83
+ // yarn workspaces v1.22.19
84
+ // error Cannot find the root of your workspace - are you sure you're currently in a workspace?
85
+ // info Visit https://yarnpkg.com/en/docs/cli/workspaces for documentation about this command.
86
+ // - if there is a "workspaces" key in package.json the output contains text
87
+ // outside of json. Remove it:
88
+ // $ yarn workspaces info --json
89
+ // yarn workspaces v1.22.19
90
+ // {
91
+ // "workspace-a": {
92
+ // "location": "workspace-a",
93
+ // "workspaceDependencies": [],
94
+ // "mismatchedWorkspaceDependencies": []
95
+ // }
96
+ // }
97
+ // Done in 0.02s.
98
+ async function getYarnSubprojectsVersionOne(dir, installer, subprojects) {
99
+ const cmd = new commandStruct_1.default('yarn', ['workspaces', 'info', '--json'], installer.path);
100
+ const output = await (0, commandRunner_1.run)(cmd);
101
+ // Remove any text before and after JSON
102
+ let lines = output.stdout.split('\n');
103
+ let outputClean = '';
104
+ for (const line of lines) {
105
+ if (line.startsWith('error'))
106
+ return;
107
+ if (!(line.startsWith('yarn workspaces v') || line.startsWith('Done in ')))
108
+ outputClean += line;
109
+ }
110
+ for (const [name, location] of yarn1Workspaces(JSON.parse(outputClean))) {
111
+ const subProjectPath = (0, path_1.join)(dir, location);
112
+ const subProjectName = (0, path_1.basename)(name);
113
+ const projectConfiguration = {
114
+ name: subProjectName,
115
+ path: subProjectPath,
116
+ // must set the new path in the installer
117
+ availableInstallers: [new javaScriptAgentInstaller_1.YarnInstaller(subProjectPath)],
118
+ };
119
+ subprojects.push(projectConfiguration);
120
+ }
121
+ }
122
+ async function getYarnSubprojectsVersionAboveOne(dir, installer, subprojects) {
123
+ const cmd = new commandStruct_1.default('yarn', ['workspaces', 'list', '--json'], installer.path);
124
+ const output = await (0, commandRunner_1.run)(cmd);
125
+ for (const line of output.stdout.split('\n')) {
126
+ if (line !== '') {
127
+ const yarnWorkspace = JSON.parse(line);
128
+ const subProjectPath = (0, path_1.join)(dir, yarnWorkspace['location']);
129
+ const subProjectName = (0, path_1.basename)(yarnWorkspace['name']);
130
+ const projectConfiguration = {
131
+ name: subProjectName,
132
+ path: subProjectPath,
133
+ // must set the new path in the installer
134
+ availableInstallers: [new javaScriptAgentInstaller_1.YarnInstaller(subProjectPath)],
135
+ };
136
+ subprojects.push(projectConfiguration);
137
+ }
138
+ }
139
+ }
140
+ async function getYarnSubprojects(dir, availableInstallers) {
141
+ let subprojects = [];
142
+ for (const installer of availableInstallers) {
143
+ if (installer.name === 'yarn') {
144
+ const yarnInstaller = installer;
145
+ if (await yarnInstaller.isYarnVersionOne()) {
146
+ await getYarnSubprojectsVersionOne(dir, yarnInstaller, subprojects);
147
+ }
148
+ else {
149
+ await getYarnSubprojectsVersionAboveOne(dir, yarnInstaller, subprojects);
150
+ }
151
+ }
152
+ }
153
+ return subprojects;
154
+ }
155
+ exports.getYarnSubprojects = getYarnSubprojects;
67
156
  /**
68
157
  * Identifies subprojects and returns an array of ProjectConfigurations if the user chooses to
69
158
  * install to them. If the user opts not to install to any subprojects, undefined is returned. This
@@ -73,30 +162,39 @@ async function resolveSelectedInstallers(projects, userSpecifiedInstaller) {
73
162
  * @returns ProjectConfiguration[] if the user chooses to install to subprojects, otherwise
74
163
  * undefined
75
164
  */
76
- async function getSubprojects(dir, rootHasInstaller) {
77
- const ents = await fs_1.promises.readdir(dir, { withFileTypes: true });
78
- const subprojects = (await Promise.all(ents.map(async (ent) => {
79
- if (!ent.isDirectory()) {
80
- return null;
81
- }
82
- const subProjectPath = (0, path_1.join)(dir, ent.name);
83
- try {
84
- await fs_1.promises.access(subProjectPath, fs_1.constants.R_OK);
85
- }
86
- catch (_a) {
87
- // This directory is not readable. Ignore it.
88
- return null;
89
- }
90
- const installers = await (0, installers_1.default)(subProjectPath);
91
- if (!installers.length) {
92
- return null;
93
- }
94
- return {
95
- name: ent.name,
96
- path: subProjectPath,
97
- availableInstallers: installers,
98
- };
99
- }))).filter(Boolean);
165
+ async function getSubprojects(dir, rootHasInstaller, availableInstallers) {
166
+ let subprojects = [];
167
+ const yarnSubprojects = await getYarnSubprojects(dir, availableInstallers);
168
+ if (yarnSubprojects.length > 0) {
169
+ // detect yarn packages as sub-projects
170
+ subprojects = yarnSubprojects;
171
+ }
172
+ else {
173
+ // read directory to detect sub-projects
174
+ const ents = await fs_1.promises.readdir(dir, { withFileTypes: true });
175
+ subprojects = (await Promise.all(ents.map(async (ent) => {
176
+ if (!ent.isDirectory()) {
177
+ return null;
178
+ }
179
+ const subProjectPath = (0, path_1.join)(dir, ent.name);
180
+ try {
181
+ await fs_1.promises.access(subProjectPath, fs_1.constants.R_OK);
182
+ }
183
+ catch (_a) {
184
+ // This directory is not readable. Ignore it.
185
+ return null;
186
+ }
187
+ const installers = await (0, installers_1.default)(subProjectPath);
188
+ if (!installers.length) {
189
+ return null;
190
+ }
191
+ return {
192
+ name: ent.name,
193
+ path: subProjectPath,
194
+ availableInstallers: installers,
195
+ };
196
+ }))).filter(Boolean);
197
+ }
100
198
  if (!subprojects.length) {
101
199
  // There's nothing that we can do here.
102
200
  return undefined;
@@ -108,7 +206,7 @@ async function getSubprojects(dir, rootHasInstaller) {
108
206
  message: 'This directory contains sub-projects. Would you like to choose sub-projects for installation?',
109
207
  });
110
208
  if (!addSubprojects) {
111
- // The user has opted not to continue by selecting subprojects.
209
+ // The user has opted not to continue by not selecting subprojects.
112
210
  return undefined;
113
211
  }
114
212
  const subProjectConfigurations = [];
@@ -128,7 +226,7 @@ async function getProjects(installers, dir, allowMulti, userSpecifiedInstaller)
128
226
  const availableInstallers = await (0, installers_1.default)(dir);
129
227
  const rootHasInstaller = !!availableInstallers.length;
130
228
  if (allowMulti) {
131
- const subprojects = await getSubprojects(dir, rootHasInstaller);
229
+ const subprojects = await getSubprojects(dir, rootHasInstaller, availableInstallers);
132
230
  if (subprojects === null || subprojects === void 0 ? void 0 : subprojects.length) {
133
231
  projectConfigurations.push(...subprojects);
134
232
  }
@@ -1 +1 @@
1
- {"version":3,"file":"projectConfiguration.js","sourceRoot":"","sources":["../../../src/cmds/agentInstaller/projectConfiguration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projectConfiguration.js","sourceRoot":"","sources":["../../../src/cmds/agentInstaller/projectConfiguration.ts"],"names":[],"mappings":"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"}