taskdex 0.1.1 → 0.1.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/README.md CHANGED
@@ -36,6 +36,7 @@ taskdex init
36
36
 
37
37
  This will clone the repo and immediately run interactive terminal setup.
38
38
  Setup now defaults to `dev-client` runtime, can build the native app (`expo run:ios` / `expo run:android`), and then starts Expo in `--dev-client` mode.
39
+ When a `pnpm-lock.yaml` is present in `mobile`, the CLI installs mobile dependencies with pnpm automatically.
39
40
 
40
41
  For an already-cloned repo:
41
42
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taskdex",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Terminal-first installer and launcher for Taskdex mobile + bridge",
5
5
  "type": "module",
6
6
  "bin": {
@@ -43,6 +43,16 @@ function runCommand(command, args, options = {}) {
43
43
  });
44
44
  }
45
45
 
46
+ async function installMobileDependencies(mobileDir) {
47
+ const hasPnpmLock = existsSync(path.join(mobileDir, 'pnpm-lock.yaml'));
48
+ if (hasPnpmLock) {
49
+ // Expo mobile app in this repo is pnpm-based; npm can fail on some npm/arborist versions.
50
+ await runCommand(npxCmd, ['-y', 'pnpm@9', 'install'], { cwd: mobileDir });
51
+ return;
52
+ }
53
+ await runCommand(npmCmd, ['install'], { cwd: mobileDir });
54
+ }
55
+
46
56
  function isTaskdexRepo(dir) {
47
57
  return (
48
58
  existsSync(path.join(dir, 'bridge-server')) &&
@@ -216,7 +226,7 @@ async function runInteractiveSetup(rootDir) {
216
226
  // Keep older clones working where this dependency might be missing.
217
227
  await runCommand(npmCmd, ['install', 'qrcode-terminal@^0.12.0'], { cwd: bridgeDir });
218
228
  console.log('\nInstalling mobile dependencies...\n');
219
- await runCommand(npmCmd, ['install'], { cwd: mobileDir });
229
+ await installMobileDependencies(mobileDir);
220
230
  }
221
231
 
222
232
  console.log('\nStarting bridge server...\n');