lincd-cli 0.2.36 → 0.2.38

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,22 @@
1
+ node_modules
2
+ frontend/build
3
+ frontend/web/assets
4
+ data/uploads
5
+ data/metadata
6
+ data/sessions
7
+ .yarn/*
8
+ !.yarn/patches
9
+ !.yarn/plugins
10
+ !.yarn/releases
11
+ !.yarn/sdks
12
+ !.yarn/versions
13
+ packages/**/dist
14
+ packages/**/lib
15
+ packages/**/.yarn/*
16
+ !packages/**/.yarn/patches
17
+ !packages/**/.yarn/plugins
18
+ !packages/**/.yarn/releases
19
+ !packages/**/.yarn/sdks
20
+ !packages/**/.yarn/versions
21
+ android/app/build
22
+ ios/App/App/public
@@ -0,0 +1,8 @@
1
+ nodeLinker: "node-modules"
2
+ npmRegistryServer: "https://registry.npmjs.org/"
3
+
4
+ plugins:
5
+ - path: .yarn/plugins/@yarnpkg/plugin-version.cjs
6
+ spec: "@yarnpkg/plugin-version"
7
+
8
+ yarnPath: .yarn/releases/yarn-3.6.1.cjs
@@ -35,7 +35,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
35
35
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.executeCommandForPackage = exports.addCapacitor = exports.executeCommandForEachPackage = exports.buildUpdated = exports.publishPackage = exports.publishUpdated = exports.buildPackage = exports.buildMetadata = exports.register = exports.createPackage = exports.createComponent = exports.createSetComponent = exports.createShape = exports.createOntology = exports.getLincdPackages = exports.buildAll = exports.developPackage = exports.createApp = void 0;
38
+ exports.executeCommandForPackage = exports.addCapacitor = exports.executeCommandForEachPackage = exports.buildUpdated = exports.publishPackage = exports.publishUpdated = exports.buildPackage = exports.buildMetadata = exports.register = exports.createPackage = exports.depCheck = exports.createComponent = exports.createSetComponent = exports.createShape = exports.createOntology = exports.getLincdPackages = exports.buildAll = exports.developPackage = exports.createApp = void 0;
39
39
  const path_1 = __importDefault(require("path"));
40
40
  const fs_extra_1 = __importDefault(require("fs-extra"));
41
41
  const utils_1 = require("./utils");
@@ -47,6 +47,7 @@ const JSONLDWriter_1 = require("lincd-jsonld/lib/utils/JSONLDWriter");
47
47
  const NameSpace_1 = require("lincd/lib/utils/NameSpace");
48
48
  const Prefix_1 = require("lincd/lib/utils/Prefix");
49
49
  const get_env_vars_1 = require("env-cmd/dist/get-env-vars");
50
+ const depcheck_1 = __importDefault(require("depcheck"));
50
51
  var glob = require('glob');
51
52
  var variables = {};
52
53
  var open = require('open');
@@ -63,7 +64,8 @@ const createApp = (name, basePath = process.cwd()) => __awaiter(void 0, void 0,
63
64
  fs_extra_1.default.copySync(path_1.default.join(__dirname, '..', 'defaults', 'app-with-backend'), targetFolder);
64
65
  //make sure the data folder exists (even though its empty).. copying empty folders does not work with fs.copySync
65
66
  fs_extra_1.default.mkdirSync(path_1.default.join(targetFolder, 'data'), { recursive: true });
66
- // fs.renameSync(path.join(targetFolder, '.yarnrc.yml.template'), path.join(targetFolder, '.yarnrc.yml'));
67
+ fs_extra_1.default.renameSync(path_1.default.join(targetFolder, 'gitignore.template'), path_1.default.join(targetFolder, '.gitignore'));
68
+ fs_extra_1.default.renameSync(path_1.default.join(targetFolder, 'yarnrc.yml.template'), path_1.default.join(targetFolder, '.yarnrc.yml'));
67
69
  // fs.copySync(path.join(__dirname, '..', 'defaults', 'app'), targetFolder);
68
70
  log("Creating new LINCD application '" + name + "'");
69
71
  //replace variables in some copied files
@@ -234,8 +236,12 @@ function runOnPackagesGroupedByDependencies(lincdPackages, onBuildStack, onStack
234
236
  });
235
237
  if (stack.length <= 0 && done.size < lincdPackages.size) {
236
238
  console.log(chalk_1.default.red('Only ' + done.size + ' out of ' + lincdPackages.size + ' packages have been built'));
237
- console.log('ALL remaining packages have dependencies that have not been met. This may point to ' + chalk_1.default.red('circular dependencies.'));
238
- console.log('Already built: ' + Array.from(done).map(p => chalk_1.default.green(p.packageName)).join(', '));
239
+ console.log('ALL remaining packages have dependencies that have not been met. This may point to ' +
240
+ chalk_1.default.red('circular dependencies.'));
241
+ console.log('Already built: ' +
242
+ Array.from(done)
243
+ .map((p) => chalk_1.default.green(p.packageName))
244
+ .join(', '));
239
245
  console.log(chalk_1.default.blue('\nTo solve this issue') + ': find the circular dependencies below and fix the dependencies:\n\n');
240
246
  //TODO: actually find and name the packages that have circular dependencies
241
247
  // let circular = [];
@@ -253,15 +259,20 @@ function runOnPackagesGroupedByDependencies(lincdPackages, onBuildStack, onStack
253
259
  // process.exit();
254
260
  // }
255
261
  // });
256
- lincdPackages.forEach(pkg => {
262
+ lincdPackages.forEach((pkg) => {
257
263
  let deps = dependencies.get(pkg);
258
264
  if (!done.has(pkg)) {
259
- console.log(chalk_1.default.red(pkg.packageName) + ' has not been built yet. Unbuilt dependencies:\n' + deps.filter(dependency => {
260
- return !Array.from(done).some(p => {
261
- // console.log(p.packageName,dependency.packageName,p===dependency)
262
- return p === dependency;
263
- });
264
- }).map(p => chalk_1.default.red('\t- ' + ((p === null || p === void 0 ? void 0 : p.packageName) ? p.packageName : p.toString()) + '\n')).join(" "));
265
+ console.log(chalk_1.default.red(pkg.packageName) +
266
+ ' has not been built yet. Unbuilt dependencies:\n' +
267
+ deps
268
+ .filter((dependency) => {
269
+ return !Array.from(done).some((p) => {
270
+ // console.log(p.packageName,dependency.packageName,p===dependency)
271
+ return p === dependency;
272
+ });
273
+ })
274
+ .map((p) => chalk_1.default.red('\t- ' + ((p === null || p === void 0 ? void 0 : p.packageName) ? p.packageName : p.toString()) + '\n'))
275
+ .join(' '));
265
276
  // console.log(chalk.red(pkg.packageName)+' has not been built yet. Built dependencies:\n' + deps.filter(dependency => {
266
277
  // return Array.from(done).some(p => p.packageName === pkg.packageName)
267
278
  // }).map(p => chalk.green('\t- '+p.packageName+'\n')).join(" "))
@@ -281,19 +292,19 @@ function runOnPackagesGroupedByDependencies(lincdPackages, onBuildStack, onStack
281
292
  runStack(startStack);
282
293
  }
283
294
  function hasDependency(pkg, childPkg, dependencies, depth = 1) {
284
- console.log("Does " + pkg.packageName + " have dep " + childPkg.packageName + " ?");
295
+ console.log('Does ' + pkg.packageName + ' have dep ' + childPkg.packageName + ' ?');
285
296
  let deps = dependencies.get(pkg);
286
- if (deps.some(dependency => {
297
+ if (deps.some((dependency) => {
287
298
  console.log(dependency.packageName, childPkg.packageName, dependency === childPkg);
288
299
  if (depth === 2)
289
300
  return false;
290
301
  // return dependency === childPkg;
291
302
  return dependency === childPkg || hasDependency(dependency, childPkg, dependencies, depth++);
292
303
  })) {
293
- console.log("##YES");
304
+ console.log('##YES');
294
305
  return true;
295
306
  }
296
- console.log("going up");
307
+ console.log('going up');
297
308
  return false;
298
309
  }
299
310
  function buildAll(target, target2, target3) {
@@ -352,7 +363,11 @@ function buildAll(target, target2, target3) {
352
363
  }
353
364
  //unless told otherwise, build the package
354
365
  if (!command) {
355
- command = (0, utils_1.execPromise)('cd ' + pkg.path + ' && yarn exec lincd build' + (target ? ' ' + target : '') + (target2 ? ' ' + target2 : ''), false, false, {}, false);
366
+ command = (0, utils_1.execPromise)('cd ' +
367
+ pkg.path +
368
+ ' && yarn exec lincd build' +
369
+ (target ? ' ' + target : '') +
370
+ (target2 ? ' ' + target2 : ''), false, false, {}, false);
356
371
  debugInfo(chalk_1.default.cyan('Building ' + pkg.packageName));
357
372
  }
358
373
  return command
@@ -486,8 +501,8 @@ function setVariable(name, replacement) {
486
501
  variables[name] = replacement;
487
502
  }
488
503
  var replaceVariablesInFile = (filePath) => __awaiter(void 0, void 0, void 0, function* () {
489
- var fileContent = yield fs_extra_1.default.readFile(filePath, 'utf8').catch(err => {
490
- console.warn(chalk_1.default.red("Could not read file " + filePath));
504
+ var fileContent = yield fs_extra_1.default.readFile(filePath, 'utf8').catch((err) => {
505
+ console.warn(chalk_1.default.red('Could not read file ' + filePath));
491
506
  });
492
507
  if (fileContent) {
493
508
  var newContent = replaceCurlyVariables(fileContent);
@@ -706,6 +721,28 @@ const createComponent = (name, basePath = process.cwd()) => __awaiter(void 0, vo
706
721
  }
707
722
  });
708
723
  exports.createComponent = createComponent;
724
+ const depCheck = () => __awaiter(void 0, void 0, void 0, function* () {
725
+ (0, depcheck_1.default)(process.cwd(), {}, (results) => {
726
+ if (results.missing) {
727
+ let missing = Object.keys(results.missing);
728
+ //currently react is not an explicit dependency, but we should add it as a peer dependency
729
+ missing.splice(missing.indexOf('react'));
730
+ if (missing.length > 0) {
731
+ console.warn(chalk_1.default.red('Missing dependencies:\n\t' + missing.join(',\n\t')));
732
+ }
733
+ }
734
+ // if(Object.keys(results.invalidFiles).length > 0) {
735
+ // console.warn(chalk.red("Invalid files:\n")+Object.keys(results.invalidFiles).join(",\n"));
736
+ // }
737
+ // if(Object.keys(results.invalidDirs).length > 0) {
738
+ // console.warn(chalk.red("Invalid dirs:\n")+results.invalidDirs.toString());
739
+ // }
740
+ // if(results.unused) {
741
+ // console.warn("Unused dependencies: "+results.missing.join(", "));
742
+ // }
743
+ });
744
+ });
745
+ exports.depCheck = depCheck;
709
746
  const createPackage = (name, uriBase, basePath = process.cwd()) => __awaiter(void 0, void 0, void 0, function* () {
710
747
  //if ran with npx, basePath will be the root directory of the repository, even if we're executing from a sub folder (the root directory is where node_modules lives and package.json with workspaces)
711
748
  //so we manually find a packages folder, if it exists we go into that.
@@ -906,7 +943,7 @@ const buildMetadata = () => __awaiter(void 0, void 0, void 0, function* () {
906
943
  }
907
944
  else {
908
945
  if (!response.packageUri) {
909
- console.warn("No package URI from meta data. Not building meta data for this package");
946
+ console.warn('No package URI from meta data. Not building meta data for this package');
910
947
  return;
911
948
  }
912
949
  let pkgNode = models_1.NamedNode.getOrCreate(response.packageUri);
@@ -1020,7 +1057,7 @@ const getLastCommitTime = (packagePath) => {
1020
1057
  // process.exit();
1021
1058
  return (0, utils_1.execPromise)(`git log -1 --format="%h %ci" -- ${packagePath}`)
1022
1059
  .then((result) => __awaiter(void 0, void 0, void 0, function* () {
1023
- let commitId = result.substring(0, result.indexOf(" "));
1060
+ let commitId = result.substring(0, result.indexOf(' '));
1024
1061
  let date = result.substring(commitId.length + 1);
1025
1062
  let lastCommitDate = new Date(date);
1026
1063
  let changes = yield (0, utils_1.execPromise)(`git show --stat --oneline ${commitId} -- ${packagePath}`);
@@ -1080,10 +1117,10 @@ var publishUpdated = function (test = false) {
1080
1117
  return chalk_1.default.gray(pckg.packageName + ' is private');
1081
1118
  // return previousResult + ' ' + chalk.gray(pckg.packageName + ' is private\n');
1082
1119
  }
1083
- console.log("testing npm");
1120
+ console.log('testing npm');
1084
1121
  return (0, utils_1.execPromise)('npm info ' + pckg.packageName + ' --json')
1085
1122
  .then((output) => __awaiter(this, void 0, void 0, function* () {
1086
- console.log("testing npm done");
1123
+ console.log('testing npm done');
1087
1124
  var info;
1088
1125
  try {
1089
1126
  if (output == '' || output.includes('E404')) {
@@ -1123,10 +1160,10 @@ var publishUpdated = function (test = false) {
1123
1160
  shouldPublish = lastPublishDate.getTime() < lastCommitInfo.date.getTime();
1124
1161
  //ignore changes to package.json if that's the only change, because when we publish the version number changes, which is then committed
1125
1162
  //(note there is always 2 lines for commit info + number of files changed)
1126
- let changedFiles = lastCommitInfo.changes.split("\n").filter(line => line.includes("|"));
1163
+ let changedFiles = lastCommitInfo.changes.split('\n').filter((line) => line.includes('|'));
1127
1164
  let numberOfFilesChanges = changedFiles.length;
1128
1165
  // console.log("CHECK "+lastCommitInfo.changes.includes("package.json")+" - "+numberOfFilesChanges)
1129
- if (shouldPublish && lastCommitInfo.changes.includes("package.json") && numberOfFilesChanges === 1) {
1166
+ if (shouldPublish && lastCommitInfo.changes.includes('package.json') && numberOfFilesChanges === 1) {
1130
1167
  shouldPublish = false;
1131
1168
  }
1132
1169
  if (shouldPublish) {
@@ -1136,7 +1173,10 @@ var publishUpdated = function (test = false) {
1136
1173
  lastPublishDate.toTimeString() +
1137
1174
  ' published ' +
1138
1175
  info.version);
1139
- log(lastCommitInfo.date.toDateString() + ' ' + new Date(lastCommitInfo.date).toTimeString() + ' source last committed:');
1176
+ log(lastCommitInfo.date.toDateString() +
1177
+ ' ' +
1178
+ new Date(lastCommitInfo.date).toTimeString() +
1179
+ ' source last committed:');
1140
1180
  log(lastCommitInfo.changes);
1141
1181
  }
1142
1182
  }
@@ -1199,7 +1239,7 @@ function getEnvJsonPath(relativeToPath = process.cwd()) {
1199
1239
  }
1200
1240
  // let path = './';
1201
1241
  for (let i = 0; i <= 10; i++) {
1202
- let envFile = yield (0, get_env_vars_1.getEnvFile)({ filePath: relativeToPath + path + '.env.json' }).catch(err => {
1242
+ let envFile = yield (0, get_env_vars_1.getEnvFile)({ filePath: relativeToPath + path + '.env.json' }).catch((err) => {
1203
1243
  return null;
1204
1244
  });
1205
1245
  if (envFile) {
@@ -1273,7 +1313,7 @@ var buildUpdated = function (back, target, target2, test = false) {
1273
1313
  let packagesLeft = packages.size;
1274
1314
  runOnPackagesGroupedByDependencies(packages, (packageGroup, dependencies) => {
1275
1315
  debugInfo('Now checking: ' + chalk_1.default.blue(packageGroup.map((i) => i.packageName)));
1276
- debugInfo((packagesLeft) + " packages left.");
1316
+ debugInfo(packagesLeft + ' packages left.');
1277
1317
  packagesLeft = packagesLeft - packageGroup.length;
1278
1318
  return (pkg) => __awaiter(this, void 0, void 0, function* () {
1279
1319
  // debugInfo('# Checking package ' + pkg.packageName);
@@ -1447,7 +1487,7 @@ var gitIgnore = function (...entries) {
1447
1487
  };
1448
1488
  var addLinesToFile = function (filePath, entries) {
1449
1489
  let fileContents = fs_extra_1.default.readFileSync(filePath, { encoding: 'utf8' });
1450
- entries.forEach(entry => {
1490
+ entries.forEach((entry) => {
1451
1491
  fileContents += '\n' + entry;
1452
1492
  });
1453
1493
  fs_extra_1.default.writeFileSync(filePath, fileContents);
@@ -1461,12 +1501,12 @@ var addCapacitor = function (basePath = process.cwd()) {
1461
1501
  let envCmdPath = path_1.default.resolve(basePath, '.env-cmdrc.json');
1462
1502
  let envCmd = JSON.parse(fs_extra_1.default.readFileSync(envCmdPath, { encoding: 'utf8' }));
1463
1503
  envCmd['static-dev'] = {
1464
- "NODE_ENV": "production",
1465
- "SITE_ROOT": "http://localhost:4000",
1466
- "DATA_ROOT": "http://localhost:4000/data",
1467
- "OUTPUT_PATH": "./frontend/web/assets",
1468
- "ASSET_PATH": "./assets/",
1469
- "ENTRY_PATH": "./frontend/src/index-static.tsx"
1504
+ NODE_ENV: 'production',
1505
+ SITE_ROOT: 'http://localhost:4000',
1506
+ DATA_ROOT: 'http://localhost:4000/data',
1507
+ OUTPUT_PATH: './frontend/web/assets',
1508
+ ASSET_PATH: './assets/',
1509
+ ENTRY_PATH: './frontend/src/index-static.tsx',
1470
1510
  };
1471
1511
  fs_extra_1.default.writeFile(envCmdPath, JSON.stringify(envCmd, null, 2));
1472
1512
  log('Edited .env-cmdrc.json');
package/lib/cli.js CHANGED
@@ -110,6 +110,9 @@ program.command('all [action] [filter] [filter-value]').action((command, filter,
110
110
  program.command('dev [target] [mode]').action((target, mode) => {
111
111
  (0, cli_methods_1.developPackage)(target, mode);
112
112
  });
113
+ program.command('depcheck').action((target, mode) => {
114
+ (0, cli_methods_1.depCheck)();
115
+ });
113
116
  program
114
117
  .command('package')
115
118
  .action((name, command, args) => {
@@ -75,7 +75,7 @@ function setupGrunt(grunt, moduleName, config) {
75
75
  grunt.registerTask('build-es6', (0, utils_1.flatten)([
76
76
  'prepare-build',
77
77
  buildFrontend ? 'webpack:build-es6' : null,
78
- buildServer ? ['clean:lib', 'exec:build-lib', 'copy:lib'] : null,
78
+ buildServer ? ['clean:lib', 'exec:build-lib', 'copy:lib', 'exec:depcheck'] : null,
79
79
  // 'exec:shapes',
80
80
  ]));
81
81
  grunt.registerTask('build-lib', ['prepare-build', 'exec:build-lib', 'copy:lib']);
@@ -96,6 +96,7 @@ function setupGrunt(grunt, moduleName, config) {
96
96
  'build-lib-es5': 'yarn exec tsc --pretty -p tsconfig-es5.json',
97
97
  beforeBuildCommand: config.beforeBuildCommand,
98
98
  'server-dev': 'tsc -w',
99
+ depcheck: 'yarn lincd depcheck',
99
100
  test: 'tsc -w',
100
101
  // shapes: 'lincd shapes',
101
102
  'css-declarations': 'tcm -p **/*.scss',
package/lib/utils.js CHANGED
@@ -53,7 +53,6 @@ exports.getPackageJSON = getPackageJSON;
53
53
  * @param packageJson
54
54
  */
55
55
  var getLINCDDependencies = function (packageJson, checkedPackages = new Set()) {
56
- var _a;
57
56
  if (!packageJson) {
58
57
  packageJson = (0, exports.getPackageJSON)();
59
58
  }
@@ -81,33 +80,71 @@ var getLINCDDependencies = function (packageJson, checkedPackages = new Set()) {
81
80
  }
82
81
  }
83
82
  if (firstTime) {
84
- let dependencyMap = new Map();
83
+ // let dependencyMap:Map<string,Set<string>> = new Map();
85
84
  let lincdPackageNames = new Set(lincdPackagePaths.map(([packageName, modulePath, pkgDependencies]) => packageName));
86
85
  //remove lincd-cli from the list of lincd packages
87
86
  lincdPackageNames.delete('lincd-cli');
88
- lincdPackagePaths.forEach(([packageName, modulePath, pkgDependencies]) => {
89
- dependencyMap.set(packageName, new Set(pkgDependencies.filter(dependency => lincdPackageNames.has(dependency))));
87
+ lincdPackagePaths.forEach(([packageName, modulePath, pkgDependencies], key) => {
88
+ let lincdDependencies = pkgDependencies.filter(dependency => lincdPackageNames.has(dependency));
89
+ if (packageName === 'lincd-cli') {
90
+ //remove lincd-modules from the dependencies of lincd-cli (it's not a hard dependency, and it messes things up)
91
+ lincdDependencies.splice(lincdDependencies.indexOf('lincd-modules'), 1);
92
+ }
93
+ // dependencyMap.set(packageName, new Set(lincdDependencies));
94
+ //update dependencies to be the actual lincd package objects
95
+ lincdPackagePaths[key][2] = lincdDependencies;
90
96
  });
91
- //remove lincd-modules from the dependencies of lincd-cli (it's not a hard dependency, and it messes things up)
92
- (_a = dependencyMap.get('lincd-cli')) === null || _a === void 0 ? void 0 : _a.delete('lincd-modules');
93
- //add the nested dependencies for each lincd package
94
- for (let [packageName, pkgDependencies] of dependencyMap) {
95
- pkgDependencies.forEach((dependency) => {
96
- if (dependencyMap.has(dependency)) {
97
- dependencyMap.get(dependency).forEach((nestedDependency) => {
98
- pkgDependencies.add(nestedDependency);
99
- });
97
+ // //add the nested dependencies for each lincd package
98
+ // for (let [packageName,pkgDependencies] of dependencyMap) {
99
+ // pkgDependencies.forEach((dependency) => {
100
+ // if (dependencyMap.has(dependency)) {
101
+ // dependencyMap.get(dependency).forEach((nestedDependency) => {
102
+ // pkgDependencies.add(nestedDependency);
103
+ // });
104
+ // }
105
+ // });
106
+ // }
107
+ //
108
+ // dependencyMap.forEach((dependencies,packageName) => {
109
+ // //check for circular dependencies
110
+ // if([...dependencies].some(dependency => {
111
+ // return dependencyMap.get(dependency).has(packageName);
112
+ // }))
113
+ // {
114
+ // console.warn(`Circular dependency detected between ${packageName} and ${dependency}`);
115
+ // }
116
+ //
117
+ // });
118
+ // a simple sort with dependencyMap doesn't seem to work,so we start with LINCD (least dependencies) and from there add packages that have all their dependencies already added
119
+ let sortedPackagePaths = [];
120
+ let addedPackages = new Set(['lincd']);
121
+ sortedPackagePaths.push(lincdPackagePaths.find(([packageName]) => {
122
+ return packageName === 'lincd';
123
+ }));
124
+ while (addedPackages.size !== lincdPackagePaths.length) {
125
+ let startSize = addedPackages.size;
126
+ lincdPackagePaths.forEach(([packageName, modulePath, pkgDependencies]) => {
127
+ if (!addedPackages.has(packageName) && pkgDependencies.every(dependency => addedPackages.has(dependency))) {
128
+ sortedPackagePaths.push([packageName, modulePath, pkgDependencies]);
129
+ addedPackages.add(packageName);
100
130
  }
101
131
  });
132
+ if (startSize === addedPackages.size) {
133
+ console.warn('Could not sort lincd packages, circular dependencies?');
134
+ break;
135
+ }
102
136
  }
103
137
  //sort the lincd packages by least dependent first
104
- lincdPackagePaths.sort(([packageNameA, modulePathA, pkgDependenciesA], [packageNameB, modulePathB, pkgDependenciesB]) => {
105
- //if package A depends on package B, then package B should come first
106
- if (dependencyMap.get(packageNameA).has(packageNameB)) {
107
- return 1;
108
- }
109
- return -1;
110
- });
138
+ // lincdPackagePaths = lincdPackagePaths.sort(([packageNameA],[packageNameB]) => {
139
+ // //if package A depends on package B, then package B should come first
140
+ // if (dependencyMap.get(packageNameA).has(packageNameB)) {
141
+ // console.log(packageNameA+' depends on '+packageNameB+ ' (below)')
142
+ // return 1;
143
+ // }
144
+ // console.log(packageNameA+' above '+packageNameB)
145
+ // return -1;
146
+ // });
147
+ return sortedPackagePaths;
111
148
  }
112
149
  return lincdPackagePaths;
113
150
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lincd-cli",
3
- "version": "0.2.36",
3
+ "version": "0.2.38",
4
4
  "description": "Command line tools for the lincd.js library",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -8,7 +8,6 @@
8
8
  "build": "npm exec tsc",
9
9
  "dev": "npm exec tsc -w"
10
10
  },
11
- "lincd": true,
12
11
  "keywords": [
13
12
  "lincd",
14
13
  "cli",
@@ -45,6 +44,7 @@
45
44
  "commander": "^9.4.0",
46
45
  "copy-webpack-plugin": "^11.0.0",
47
46
  "css-loader": "^6.7.1",
47
+ "depcheck": "^1.4.3",
48
48
  "env-cmd": "^10.1.0",
49
49
  "find-nearest-package-json": "^2.0.1",
50
50
  "fs-extra": "^10.1.0",