@_nazmiforreal/flutter-ota 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.
@@ -46,6 +46,17 @@ if (fs.existsSync(binPath)) {
46
46
  spawnSync('dart', ['--version'], { stdio: 'ignore' }).status === 0 &&
47
47
  fs.existsSync(sourceEntry)
48
48
  ) {
49
+ // Ensure dependencies are resolved before running from source.
50
+ const cliDir = path.dirname(path.dirname(sourceEntry));
51
+ const getRes = spawnSync('dart', ['pub', 'get'], { stdio: 'inherit', cwd: cliDir });
52
+ if (getRes.status !== 0) {
53
+ console.error(
54
+ 'flutter-patcher: `dart pub get` failed. Install dependencies or build ' +
55
+ `a prebuilt manually:\n cd ${cliDir} && dart compile exe ` +
56
+ `bin/flutter_patcher.dart -o ${binPath}`,
57
+ );
58
+ process.exit(1);
59
+ }
49
60
  run('dart', [sourceEntry, ...process.argv.slice(2)]);
50
61
  } else {
51
62
  console.error(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@_nazmiforreal/flutter-ota",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Command-line interface for flutter_patcher — an OTA code-push tool for Flutter, hot-updater compatible.",
5
5
  "bin": {
6
6
  "flutter-patcher": "./bin/flutter-patcher.js"
@@ -6,6 +6,11 @@
6
6
  // `flutter-patcher-<os>-<arch>` binary ships in `bin/`, use it. Otherwise, when
7
7
  // the Dart SDK is present, compile one from the bundled Dart source so the
8
8
  // package works on architectures we did not prebuild (e.g. arm64).
9
+ //
10
+ // We explicitly run `dart pub get` first so dependency resolution is reliable
11
+ // (a stale/locked tree would otherwise fail to fetch packages). If compilation
12
+ // cannot be performed we warn (and exit 0) rather than failing the whole npm
13
+ // install — the launcher prints a clear "how to build" message at runtime.
9
14
 
10
15
  const { spawnSync } = require('child_process');
11
16
  const fs = require('fs');
@@ -27,6 +32,7 @@ const ext = process.platform === 'win32' ? '.exe' : '';
27
32
  const pkgDir = path.join(__dirname, '..');
28
33
  const binDir = path.join(pkgDir, 'bin');
29
34
  const target = path.join(binDir, `flutter-patcher-${platformName}-${archName}${ext}`);
35
+ const cliDir = path.join(pkgDir, 'dart-src', 'packages', 'cli-tools');
30
36
 
31
37
  if (fs.existsSync(target)) {
32
38
  console.log(`flutter-patcher: prebuilt binary present (${platformName}-${archName}), skipping build.`);
@@ -43,20 +49,33 @@ if (dartCheck.status !== 0) {
43
49
  process.exit(0);
44
50
  }
45
51
 
46
- const sourceEntry = path.join(
47
- pkgDir, 'dart-src', 'packages', 'cli-tools', 'bin', 'flutter_patcher.dart',
48
- );
49
- if (!fs.existsSync(sourceEntry)) {
52
+ if (!fs.existsSync(path.join(cliDir, 'pubspec.yaml'))) {
50
53
  console.warn('flutter-patcher: bundled Dart source not found; skipping build.');
51
54
  process.exit(0);
52
55
  }
53
56
 
54
- // Compile from within the cli-tools package dir so its pubspec (and local path
55
- // dependencies) resolve correctly.
57
+ console.log('flutter-patcher: resolving Dart dependencies (dart pub get)...');
58
+ const getRes = spawnSync('dart', ['pub', 'get'], { stdio: 'inherit', cwd: cliDir });
59
+ if (getRes.status !== 0) {
60
+ console.warn(
61
+ 'flutter-patcher: `dart pub get` failed (check your network / Dart version). ' +
62
+ `To build manually:\n cd ${cliDir} && dart compile exe bin/flutter_patcher.dart ` +
63
+ `-o ${target}`,
64
+ );
65
+ process.exit(0);
66
+ }
67
+
56
68
  console.log('flutter-patcher: building native binary with `dart compile exe`...');
57
69
  const res = spawnSync(
58
70
  'dart',
59
71
  ['compile', 'exe', 'bin/flutter_patcher.dart', '-o', target],
60
- { stdio: 'inherit', cwd: path.dirname(path.dirname(sourceEntry)) },
72
+ { stdio: 'inherit', cwd: cliDir },
61
73
  );
62
- process.exit(res.status == null ? 1 : res.status);
74
+ if (res.status !== 0) {
75
+ console.warn(
76
+ 'flutter-patcher: build failed. To build manually:\n cd ' +
77
+ `${cliDir} && dart compile exe bin/flutter_patcher.dart -o ${target}`,
78
+ );
79
+ process.exit(0);
80
+ }
81
+ console.log(`flutter-patcher: built ${target}`);
@@ -1,496 +0,0 @@
1
- {
2
- "configVersion": 2,
3
- "packages": [
4
- {
5
- "name": "_fe_analyzer_shared",
6
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-105.0.0",
7
- "packageUri": "lib/",
8
- "languageVersion": "3.11"
9
- },
10
- {
11
- "name": "adaptive_number",
12
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/adaptive_number-1.0.0",
13
- "packageUri": "lib/",
14
- "languageVersion": "2.12"
15
- },
16
- {
17
- "name": "analyzer",
18
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/analyzer-14.1.0",
19
- "packageUri": "lib/",
20
- "languageVersion": "3.11"
21
- },
22
- {
23
- "name": "archive",
24
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/archive-4.2.0",
25
- "packageUri": "lib/",
26
- "languageVersion": "3.0"
27
- },
28
- {
29
- "name": "args",
30
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/args-2.7.0",
31
- "packageUri": "lib/",
32
- "languageVersion": "3.3"
33
- },
34
- {
35
- "name": "asn1lib",
36
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/asn1lib-1.6.5",
37
- "packageUri": "lib/",
38
- "languageVersion": "3.0"
39
- },
40
- {
41
- "name": "async",
42
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/async-2.13.1",
43
- "packageUri": "lib/",
44
- "languageVersion": "3.4"
45
- },
46
- {
47
- "name": "boolean_selector",
48
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/boolean_selector-2.1.2",
49
- "packageUri": "lib/",
50
- "languageVersion": "3.1"
51
- },
52
- {
53
- "name": "buffer",
54
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/buffer-1.2.3",
55
- "packageUri": "lib/",
56
- "languageVersion": "2.12"
57
- },
58
- {
59
- "name": "charcode",
60
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/charcode-1.4.0",
61
- "packageUri": "lib/",
62
- "languageVersion": "3.0"
63
- },
64
- {
65
- "name": "cli_config",
66
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/cli_config-0.2.0",
67
- "packageUri": "lib/",
68
- "languageVersion": "3.0"
69
- },
70
- {
71
- "name": "clock",
72
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/clock-1.1.2",
73
- "packageUri": "lib/",
74
- "languageVersion": "3.4"
75
- },
76
- {
77
- "name": "collection",
78
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/collection-1.19.1",
79
- "packageUri": "lib/",
80
- "languageVersion": "3.4"
81
- },
82
- {
83
- "name": "convert",
84
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/convert-3.1.2",
85
- "packageUri": "lib/",
86
- "languageVersion": "3.4"
87
- },
88
- {
89
- "name": "coverage",
90
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/coverage-1.15.1",
91
- "packageUri": "lib/",
92
- "languageVersion": "3.4"
93
- },
94
- {
95
- "name": "crypto",
96
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/crypto-3.0.7",
97
- "packageUri": "lib/",
98
- "languageVersion": "3.4"
99
- },
100
- {
101
- "name": "cryptography",
102
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/cryptography-2.9.0",
103
- "packageUri": "lib/",
104
- "languageVersion": "3.3"
105
- },
106
- {
107
- "name": "dart_jsonwebtoken",
108
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/dart_jsonwebtoken-3.1.1",
109
- "packageUri": "lib/",
110
- "languageVersion": "2.12"
111
- },
112
- {
113
- "name": "ed25519_edwards",
114
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/ed25519_edwards-0.3.2",
115
- "packageUri": "lib/",
116
- "languageVersion": "2.12"
117
- },
118
- {
119
- "name": "ffi",
120
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/ffi-2.2.0",
121
- "packageUri": "lib/",
122
- "languageVersion": "3.7"
123
- },
124
- {
125
- "name": "file",
126
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/file-7.0.1",
127
- "packageUri": "lib/",
128
- "languageVersion": "3.0"
129
- },
130
- {
131
- "name": "fixnum",
132
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/fixnum-1.1.1",
133
- "packageUri": "lib/",
134
- "languageVersion": "3.1"
135
- },
136
- {
137
- "name": "flutter_patcher_aws",
138
- "rootUri": "../../../plugins/aws",
139
- "packageUri": "lib/",
140
- "languageVersion": "3.3"
141
- },
142
- {
143
- "name": "flutter_patcher_cloudflare",
144
- "rootUri": "../../../plugins/cloudflare",
145
- "packageUri": "lib/",
146
- "languageVersion": "3.3"
147
- },
148
- {
149
- "name": "flutter_patcher_core",
150
- "rootUri": "../../core",
151
- "packageUri": "lib/",
152
- "languageVersion": "3.0"
153
- },
154
- {
155
- "name": "flutter_patcher_plugin_core",
156
- "rootUri": "../../../plugins/plugin-core",
157
- "packageUri": "lib/",
158
- "languageVersion": "3.3"
159
- },
160
- {
161
- "name": "flutter_patcher_postgres",
162
- "rootUri": "../../../plugins/postgres",
163
- "packageUri": "lib/",
164
- "languageVersion": "3.3"
165
- },
166
- {
167
- "name": "flutter_patcher_standalone",
168
- "rootUri": "../../../plugins/standalone",
169
- "packageUri": "lib/",
170
- "languageVersion": "3.3"
171
- },
172
- {
173
- "name": "flutter_patcher_supabase",
174
- "rootUri": "../../../plugins/supabase",
175
- "packageUri": "lib/",
176
- "languageVersion": "3.3"
177
- },
178
- {
179
- "name": "frontend_server_client",
180
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/frontend_server_client-4.0.0",
181
- "packageUri": "lib/",
182
- "languageVersion": "3.0"
183
- },
184
- {
185
- "name": "functions_client",
186
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/functions_client-2.6.4",
187
- "packageUri": "lib/",
188
- "languageVersion": "3.4"
189
- },
190
- {
191
- "name": "glob",
192
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/glob-2.1.3",
193
- "packageUri": "lib/",
194
- "languageVersion": "3.3"
195
- },
196
- {
197
- "name": "gotrue",
198
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/gotrue-2.26.0",
199
- "packageUri": "lib/",
200
- "languageVersion": "3.9"
201
- },
202
- {
203
- "name": "http",
204
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/http-1.6.0",
205
- "packageUri": "lib/",
206
- "languageVersion": "3.4"
207
- },
208
- {
209
- "name": "http_multi_server",
210
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/http_multi_server-3.2.2",
211
- "packageUri": "lib/",
212
- "languageVersion": "3.2"
213
- },
214
- {
215
- "name": "http_parser",
216
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/http_parser-4.1.2",
217
- "packageUri": "lib/",
218
- "languageVersion": "3.4"
219
- },
220
- {
221
- "name": "io",
222
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/io-1.0.5",
223
- "packageUri": "lib/",
224
- "languageVersion": "3.4"
225
- },
226
- {
227
- "name": "js",
228
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/js-0.7.2",
229
- "packageUri": "lib/",
230
- "languageVersion": "3.7"
231
- },
232
- {
233
- "name": "jwt_decode",
234
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/jwt_decode-0.3.1",
235
- "packageUri": "lib/",
236
- "languageVersion": "2.12"
237
- },
238
- {
239
- "name": "logging",
240
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/logging-1.3.0",
241
- "packageUri": "lib/",
242
- "languageVersion": "3.4"
243
- },
244
- {
245
- "name": "matcher",
246
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/matcher-0.12.20",
247
- "packageUri": "lib/",
248
- "languageVersion": "3.10"
249
- },
250
- {
251
- "name": "meta",
252
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/meta-1.19.0",
253
- "packageUri": "lib/",
254
- "languageVersion": "3.5"
255
- },
256
- {
257
- "name": "mime",
258
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/mime-1.0.6",
259
- "packageUri": "lib/",
260
- "languageVersion": "3.2"
261
- },
262
- {
263
- "name": "node_preamble",
264
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/node_preamble-2.0.2",
265
- "packageUri": "lib/",
266
- "languageVersion": "2.12"
267
- },
268
- {
269
- "name": "package_config",
270
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/package_config-3.0.0",
271
- "packageUri": "lib/",
272
- "languageVersion": "3.11"
273
- },
274
- {
275
- "name": "path",
276
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/path-1.9.1",
277
- "packageUri": "lib/",
278
- "languageVersion": "3.4"
279
- },
280
- {
281
- "name": "pointycastle",
282
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/pointycastle-3.9.1",
283
- "packageUri": "lib/",
284
- "languageVersion": "3.2"
285
- },
286
- {
287
- "name": "pool",
288
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/pool-1.5.2",
289
- "packageUri": "lib/",
290
- "languageVersion": "3.4"
291
- },
292
- {
293
- "name": "posix",
294
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/posix-6.5.2",
295
- "packageUri": "lib/",
296
- "languageVersion": "3.0"
297
- },
298
- {
299
- "name": "postgres",
300
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/postgres-3.5.12",
301
- "packageUri": "lib/",
302
- "languageVersion": "3.9"
303
- },
304
- {
305
- "name": "postgrest",
306
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/postgrest-2.8.0",
307
- "packageUri": "lib/",
308
- "languageVersion": "3.4"
309
- },
310
- {
311
- "name": "pub_semver",
312
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/pub_semver-2.2.0",
313
- "packageUri": "lib/",
314
- "languageVersion": "3.4"
315
- },
316
- {
317
- "name": "realtime_client",
318
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/realtime_client-2.11.0",
319
- "packageUri": "lib/",
320
- "languageVersion": "3.9"
321
- },
322
- {
323
- "name": "retry",
324
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/retry-3.1.2",
325
- "packageUri": "lib/",
326
- "languageVersion": "3.0"
327
- },
328
- {
329
- "name": "rxdart",
330
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/rxdart-0.28.0",
331
- "packageUri": "lib/",
332
- "languageVersion": "2.12"
333
- },
334
- {
335
- "name": "shelf",
336
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/shelf-1.4.2",
337
- "packageUri": "lib/",
338
- "languageVersion": "3.4"
339
- },
340
- {
341
- "name": "shelf_packages_handler",
342
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/shelf_packages_handler-3.0.2",
343
- "packageUri": "lib/",
344
- "languageVersion": "2.17"
345
- },
346
- {
347
- "name": "shelf_static",
348
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/shelf_static-1.1.3",
349
- "packageUri": "lib/",
350
- "languageVersion": "3.3"
351
- },
352
- {
353
- "name": "shelf_web_socket",
354
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/shelf_web_socket-3.0.0",
355
- "packageUri": "lib/",
356
- "languageVersion": "3.5"
357
- },
358
- {
359
- "name": "source_map_stack_trace",
360
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/source_map_stack_trace-2.1.2",
361
- "packageUri": "lib/",
362
- "languageVersion": "3.3"
363
- },
364
- {
365
- "name": "source_maps",
366
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/source_maps-0.10.14",
367
- "packageUri": "lib/",
368
- "languageVersion": "3.3"
369
- },
370
- {
371
- "name": "source_span",
372
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/source_span-1.10.2",
373
- "packageUri": "lib/",
374
- "languageVersion": "3.1"
375
- },
376
- {
377
- "name": "stack_trace",
378
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/stack_trace-1.12.1",
379
- "packageUri": "lib/",
380
- "languageVersion": "3.4"
381
- },
382
- {
383
- "name": "storage_client",
384
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/storage_client-2.6.0",
385
- "packageUri": "lib/",
386
- "languageVersion": "3.4"
387
- },
388
- {
389
- "name": "stream_channel",
390
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/stream_channel-2.1.4",
391
- "packageUri": "lib/",
392
- "languageVersion": "3.3"
393
- },
394
- {
395
- "name": "string_scanner",
396
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/string_scanner-1.4.1",
397
- "packageUri": "lib/",
398
- "languageVersion": "3.1"
399
- },
400
- {
401
- "name": "supabase",
402
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/supabase-2.14.0",
403
- "packageUri": "lib/",
404
- "languageVersion": "3.9"
405
- },
406
- {
407
- "name": "term_glyph",
408
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/term_glyph-1.2.2",
409
- "packageUri": "lib/",
410
- "languageVersion": "3.1"
411
- },
412
- {
413
- "name": "test",
414
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/test-1.31.2",
415
- "packageUri": "lib/",
416
- "languageVersion": "3.11"
417
- },
418
- {
419
- "name": "test_api",
420
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/test_api-0.7.13",
421
- "packageUri": "lib/",
422
- "languageVersion": "3.11"
423
- },
424
- {
425
- "name": "test_core",
426
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/test_core-0.6.19",
427
- "packageUri": "lib/",
428
- "languageVersion": "3.11"
429
- },
430
- {
431
- "name": "typed_data",
432
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/typed_data-1.4.0",
433
- "packageUri": "lib/",
434
- "languageVersion": "3.5"
435
- },
436
- {
437
- "name": "vm_service",
438
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/vm_service-15.3.0",
439
- "packageUri": "lib/",
440
- "languageVersion": "3.5"
441
- },
442
- {
443
- "name": "watcher",
444
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/watcher-1.2.1",
445
- "packageUri": "lib/",
446
- "languageVersion": "3.4"
447
- },
448
- {
449
- "name": "web",
450
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/web-1.1.1",
451
- "packageUri": "lib/",
452
- "languageVersion": "3.4"
453
- },
454
- {
455
- "name": "web_socket",
456
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/web_socket-1.0.1",
457
- "packageUri": "lib/",
458
- "languageVersion": "3.4"
459
- },
460
- {
461
- "name": "web_socket_channel",
462
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/web_socket_channel-3.0.3",
463
- "packageUri": "lib/",
464
- "languageVersion": "3.3"
465
- },
466
- {
467
- "name": "webkit_inspection_protocol",
468
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1",
469
- "packageUri": "lib/",
470
- "languageVersion": "3.0"
471
- },
472
- {
473
- "name": "yaml",
474
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/yaml-3.1.3",
475
- "packageUri": "lib/",
476
- "languageVersion": "3.4"
477
- },
478
- {
479
- "name": "yet_another_json_isolate",
480
- "rootUri": "file:///home/user/.pub-cache/hosted/pub.dev/yet_another_json_isolate-2.1.1",
481
- "packageUri": "lib/",
482
- "languageVersion": "3.4"
483
- },
484
- {
485
- "name": "flutter_patcher_cli",
486
- "rootUri": "../",
487
- "packageUri": "lib/",
488
- "languageVersion": "3.3"
489
- }
490
- ],
491
- "generator": "pub",
492
- "generatorVersion": "3.12.2",
493
- "flutterRoot": "file:///home/user/flutter",
494
- "flutterVersion": "3.44.8",
495
- "pubCache": "file:///home/user/.pub-cache"
496
- }