@superblocksteam/sdk 2.0.82 → 2.0.83-next.1
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/.turbo/turbo-build.log +1 -1
- package/dist/cli-replacement/automatic-upgrades.d.ts +0 -6
- package/dist/cli-replacement/automatic-upgrades.d.ts.map +1 -1
- package/dist/cli-replacement/automatic-upgrades.js +5 -27
- package/dist/cli-replacement/automatic-upgrades.js.map +1 -1
- package/dist/cli-replacement/dev.d.mts.map +1 -1
- package/dist/cli-replacement/dev.mjs +260 -217
- package/dist/cli-replacement/dev.mjs.map +1 -1
- package/dist/cli-replacement/version-detection.d.ts +71 -0
- package/dist/cli-replacement/version-detection.d.ts.map +1 -0
- package/dist/cli-replacement/version-detection.js +186 -0
- package/dist/cli-replacement/version-detection.js.map +1 -0
- package/dist/cli-replacement/version-detection.test.d.ts +5 -0
- package/dist/cli-replacement/version-detection.test.d.ts.map +1 -0
- package/dist/cli-replacement/version-detection.test.js +257 -0
- package/dist/cli-replacement/version-detection.test.js.map +1 -0
- package/dist/dev-utils/dev-server.mjs +133 -115
- package/dist/dev-utils/dev-server.mjs.map +1 -1
- package/dist/telemetry/index.d.ts +4 -4
- package/dist/telemetry/index.d.ts.map +1 -1
- package/dist/telemetry/index.js +92 -64
- package/dist/telemetry/index.js.map +1 -1
- package/dist/telemetry/index.test.d.ts +2 -0
- package/dist/telemetry/index.test.d.ts.map +1 -0
- package/dist/telemetry/index.test.js +93 -0
- package/dist/telemetry/index.test.js.map +1 -0
- package/dist/telemetry/local-obs.d.ts +73 -0
- package/dist/telemetry/local-obs.d.ts.map +1 -0
- package/dist/telemetry/local-obs.js +107 -0
- package/dist/telemetry/local-obs.js.map +1 -0
- package/dist/telemetry/util.d.ts +1 -2
- package/dist/telemetry/util.d.ts.map +1 -1
- package/dist/telemetry/util.js +26 -4
- package/dist/telemetry/util.js.map +1 -1
- package/package.json +6 -5
- package/src/cli-replacement/automatic-upgrades.ts +10 -42
- package/src/cli-replacement/dev.mts +336 -281
- package/src/cli-replacement/version-detection.test.ts +336 -0
- package/src/cli-replacement/version-detection.ts +220 -0
- package/src/dev-utils/dev-server.mts +149 -127
- package/src/telemetry/index.test.ts +130 -0
- package/src/telemetry/index.ts +105 -83
- package/src/telemetry/local-obs.ts +138 -0
- package/src/telemetry/util.ts +27 -4
- package/tsconfig.tsbuildinfo +1 -1
- package/turbo.json +20 -2
|
@@ -18,7 +18,8 @@ import { detect } from "package-manager-detector/detect";
|
|
|
18
18
|
import { AUTO_UPGRADE_EXIT_CODE, createDevServer } from "../index.js";
|
|
19
19
|
import { getTracer } from "../telemetry/index.js";
|
|
20
20
|
import { getErrorMeta, getLogger } from "../telemetry/logging.js";
|
|
21
|
-
import { checkVersionsAndWritePackageJson
|
|
21
|
+
import { checkVersionsAndWritePackageJson } from "./automatic-upgrades.js";
|
|
22
|
+
import { getCurrentCliVersion } from "./version-detection.js";
|
|
22
23
|
const exec = promisify(child_process.exec);
|
|
23
24
|
const passErrorToVSCode = (message, logger) => {
|
|
24
25
|
if (message && process.env.SUPERBLOCKS_VSCODE === "true") {
|
|
@@ -168,248 +169,290 @@ export async function dev(options) {
|
|
|
168
169
|
const tracer = getTracer();
|
|
169
170
|
const logger = getLogger(options.logger);
|
|
170
171
|
const skipAutoUpgrade = autoUpgradeMode === DevServerAutoUpgradeMode.SKIP;
|
|
171
|
-
|
|
172
|
-
if (!fs.existsSync(path.join(cwd, "node_modules"))) {
|
|
173
|
-
throw new Error('node_modules folder is missing. Please run "npm install" first.');
|
|
174
|
-
}
|
|
175
|
-
const cliVersion = await getCurrentCliVersion();
|
|
176
|
-
logger.info(`Running command: ${options.superblocksPath} dev${options.uploadFirst ? " --upload-first" : ""}${options.downloadFirst ? " --download-first" : ""} with baseUrl: ${tokenConfig.superblocksBaseUrl}, cliVersion: ${cliVersion?.version}${cliVersion?.alias ? ` (${cliVersion.alias})` : ""}`);
|
|
177
|
-
const port = devServerPort ?? 5173;
|
|
178
|
-
const fsOperationQueue = new OperationQueue();
|
|
179
|
-
if (applicationConfig && !skipSync) {
|
|
180
|
-
const rpcClient = new AutoConnectingRpcClient(tokenConfig.superblocksBaseUrl, tokenConfig.token, tracer, tokenManager, logger);
|
|
181
|
-
// Get feature flags for inactivity timeout
|
|
182
|
-
const featureFlags = await sdk.getFeatureFlagsForCurrentUser();
|
|
183
|
-
const lockType = process.env.SUPERBLOCKS_IS_CSB === "true" ? LockType.CSB : LockType.LOCAL;
|
|
184
|
-
const inactivityTimeoutMs = lockType === LockType.CSB
|
|
185
|
-
? featureFlags.devServerCloudInactivityTimeoutMinutes() * 60 * 1000
|
|
186
|
-
: featureFlags.devServerLocalInactivityTimeoutMinutes() * 60 * 1000;
|
|
187
|
-
lockService = new LockService({
|
|
188
|
-
superblocksBaseUrl: tokenConfig.superblocksBaseUrl,
|
|
189
|
-
applicationId: applicationConfig.id,
|
|
190
|
-
branchName: applicationConfig.branchName,
|
|
191
|
-
lockType: lockType,
|
|
192
|
-
tracer,
|
|
193
|
-
logger,
|
|
194
|
-
rpcClient,
|
|
195
|
-
inactivityThresholdMs: inactivityTimeoutMs,
|
|
196
|
-
});
|
|
197
|
-
syncService = new SyncService({
|
|
198
|
-
appRootDirPath: cwd,
|
|
199
|
-
applicationId: applicationConfig.id,
|
|
200
|
-
branchName: applicationConfig.branchName,
|
|
201
|
-
fsOperationQueue,
|
|
202
|
-
lockService: lockService,
|
|
203
|
-
tracer,
|
|
204
|
-
superblocksBaseUrl: tokenConfig.superblocksBaseUrl,
|
|
205
|
-
rpcClient,
|
|
206
|
-
logger,
|
|
207
|
-
});
|
|
208
|
-
logger.info("Checking if local files are synced with the server");
|
|
172
|
+
await tracer.startActiveSpan("devServerStartup", async (startupSpan) => {
|
|
209
173
|
try {
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
logger.info("Force takeover requested, taking over lock...");
|
|
218
|
-
await lockSvc.forceTakeover();
|
|
219
|
-
logger.info("Lock acquired successfully via force takeover.");
|
|
220
|
-
}
|
|
221
|
-
else {
|
|
222
|
-
await lockSvc.acquireLock();
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
catch (error) {
|
|
226
|
-
// If we got a conflict error (409), inspect the lock for more information
|
|
227
|
-
if (error instanceof ConflictError) {
|
|
228
|
-
await handleLockConflict(error, lockSvc, span, logger);
|
|
229
|
-
return;
|
|
230
|
-
}
|
|
231
|
-
logger.error("Failed to acquire lock on application", getErrorMeta(error));
|
|
232
|
-
span.setStatus({
|
|
233
|
-
code: SpanStatusCode.ERROR,
|
|
234
|
-
message: JSON.stringify(error),
|
|
235
|
-
});
|
|
236
|
-
passErrorToVSCode(error.context?.message, logger);
|
|
237
|
-
throw new Error(`Failed to acquire lock on application: ${error}`);
|
|
238
|
-
}
|
|
239
|
-
finally {
|
|
240
|
-
span.end();
|
|
241
|
-
}
|
|
242
|
-
});
|
|
174
|
+
// Add check for node_modules
|
|
175
|
+
if (!fs.existsSync(path.join(cwd, "node_modules"))) {
|
|
176
|
+
throw new Error('node_modules folder is missing. Please run "npm install" first.');
|
|
177
|
+
}
|
|
178
|
+
const cliVersion = await tracer.startActiveSpan("getCurrentCliVersion", async (span) => {
|
|
179
|
+
try {
|
|
180
|
+
return await getCurrentCliVersion();
|
|
243
181
|
}
|
|
244
|
-
|
|
245
|
-
const results = await Promise.all([
|
|
246
|
-
sdk.hashLocalDirectory(cwd),
|
|
247
|
-
getDraftOrLiveEditHash(sdk, applicationConfig, logger),
|
|
248
|
-
sdk.fetchCurrentUser(),
|
|
249
|
-
]);
|
|
182
|
+
finally {
|
|
250
183
|
span.end();
|
|
251
|
-
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
logger.info(`Running command: ${options.superblocksPath} dev${options.uploadFirst ? " --upload-first" : ""}${options.downloadFirst ? " --download-first" : ""} with baseUrl: ${tokenConfig.superblocksBaseUrl}, cliVersion: ${cliVersion?.version}${cliVersion?.alias ? ` (${cliVersion.alias})` : ""}`);
|
|
187
|
+
const port = devServerPort ?? 5173;
|
|
188
|
+
const fsOperationQueue = new OperationQueue();
|
|
189
|
+
if (applicationConfig && !skipSync) {
|
|
190
|
+
const rpcClient = new AutoConnectingRpcClient(tokenConfig.superblocksBaseUrl, tokenConfig.token, tracer, tokenManager, logger);
|
|
191
|
+
// Get feature flags for inactivity timeout
|
|
192
|
+
const featureFlags = await tracer.startActiveSpan("getFeatureFlags", async (span) => {
|
|
193
|
+
try {
|
|
194
|
+
return await sdk.getFeatureFlagsForCurrentUser();
|
|
195
|
+
}
|
|
196
|
+
finally {
|
|
197
|
+
span.end();
|
|
198
|
+
}
|
|
252
199
|
});
|
|
253
|
-
|
|
200
|
+
const lockType = process.env.SUPERBLOCKS_IS_CSB === "true"
|
|
201
|
+
? LockType.CSB
|
|
202
|
+
: LockType.LOCAL;
|
|
203
|
+
const inactivityTimeoutMs = lockType === LockType.CSB
|
|
204
|
+
? featureFlags.devServerCloudInactivityTimeoutMinutes() * 60 * 1000
|
|
205
|
+
: featureFlags.devServerLocalInactivityTimeoutMinutes() * 60 * 1000;
|
|
206
|
+
lockService = new LockService({
|
|
254
207
|
superblocksBaseUrl: tokenConfig.superblocksBaseUrl,
|
|
255
|
-
appRootDirPath: options.cwd,
|
|
256
208
|
applicationId: applicationConfig.id,
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
209
|
+
branchName: applicationConfig.branchName,
|
|
210
|
+
lockType: lockType,
|
|
211
|
+
tracer,
|
|
212
|
+
logger,
|
|
260
213
|
rpcClient,
|
|
214
|
+
inactivityThresholdMs: inactivityTimeoutMs,
|
|
215
|
+
});
|
|
216
|
+
syncService = new SyncService({
|
|
217
|
+
appRootDirPath: cwd,
|
|
218
|
+
applicationId: applicationConfig.id,
|
|
219
|
+
branchName: applicationConfig.branchName,
|
|
220
|
+
fsOperationQueue,
|
|
221
|
+
lockService: lockService,
|
|
261
222
|
tracer,
|
|
223
|
+
superblocksBaseUrl: tokenConfig.superblocksBaseUrl,
|
|
224
|
+
rpcClient,
|
|
262
225
|
logger,
|
|
263
|
-
tokenManager,
|
|
264
|
-
features: AiServiceFeatureFlags.create(currentUser.flagBootstrap),
|
|
265
|
-
pluginExecutionVersions: currentUser.organizations[0].pluginExecutionVersions,
|
|
266
226
|
});
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
logger.info(`Local files are in sync with the server on branch '${applicationConfig.branchName}', local hash: ${localContents.hash}, server hash: ${serverHash}`);
|
|
271
|
-
}
|
|
272
|
-
else {
|
|
273
|
-
logger.info(`Local files are out of sync with the server on branch '${applicationConfig.branchName}', local hash: ${localContents.hash}, server hash: ${serverHash}`);
|
|
274
|
-
}
|
|
275
|
-
if (!(downloadFirst || uploadFirst)) {
|
|
276
|
-
throw new Error("You must choose --download-first or --upload-first to use the dev command");
|
|
277
|
-
}
|
|
278
|
-
if (downloadFirst && uploadFirst) {
|
|
279
|
-
throw new Error("Choose either --download-first or --upload-first");
|
|
280
|
-
}
|
|
281
|
-
let hasPackageChanged = false;
|
|
282
|
-
const packageJsonBefore = await readPkgJson(cwd);
|
|
283
|
-
if (downloadFirst && !isSynced) {
|
|
284
|
-
await tracer.startActiveSpan("downloadFirst", async (span) => {
|
|
285
|
-
logger.info(`Starting download of branch '${applicationConfig.branchName}'`);
|
|
286
|
-
await syncService.downloadDirectory();
|
|
287
|
-
span.end();
|
|
288
|
-
});
|
|
289
|
-
}
|
|
290
|
-
let hasCliUpdated = false;
|
|
291
|
-
let upgradePromises = [];
|
|
292
|
-
const forceUpgrade = options.autoUpgradeMode === DevServerAutoUpgradeMode.FORCE;
|
|
293
|
-
// Determine whether we must try to auto-upgrade the CLI
|
|
294
|
-
if (!skipAutoUpgrade || forceUpgrade) {
|
|
295
|
-
await tracer.startActiveSpan("versionCheckAndUpgrade", async (span) => {
|
|
227
|
+
logger.info("Checking if local files are synced with the server");
|
|
228
|
+
try {
|
|
229
|
+
await maskUnixSignals(async () => {
|
|
296
230
|
if (lockService) {
|
|
297
|
-
const
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
231
|
+
const lockSvc = lockService;
|
|
232
|
+
await tracer.startActiveSpan("acquiringInitialLock", async (span) => {
|
|
233
|
+
try {
|
|
234
|
+
// If --force-takeover flag is set, immediately force takeover instead of acquiring
|
|
235
|
+
if (options.forceTakeover) {
|
|
236
|
+
logger.info("Force takeover requested, taking over lock...");
|
|
237
|
+
await lockSvc.forceTakeover();
|
|
238
|
+
logger.info("Lock acquired successfully via force takeover.");
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
await lockSvc.acquireLock();
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
catch (error) {
|
|
245
|
+
// If we got a conflict error (409), inspect the lock for more information
|
|
246
|
+
if (error instanceof ConflictError) {
|
|
247
|
+
await handleLockConflict(error, lockSvc, span, logger);
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
logger.error("Failed to acquire lock on application", getErrorMeta(error));
|
|
251
|
+
span.setStatus({
|
|
252
|
+
code: SpanStatusCode.ERROR,
|
|
253
|
+
message: JSON.stringify(error),
|
|
254
|
+
});
|
|
255
|
+
passErrorToVSCode(error.context
|
|
256
|
+
?.message, logger);
|
|
257
|
+
throw new Error(`Failed to acquire lock on application: ${error}`);
|
|
258
|
+
}
|
|
259
|
+
finally {
|
|
260
|
+
span.end();
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
const [localContents, serverHash, currentUser] = await tracer.startActiveSpan("fetchInitInfo", async (span) => {
|
|
265
|
+
try {
|
|
266
|
+
const results = await Promise.all([
|
|
267
|
+
sdk.hashLocalDirectory(cwd),
|
|
268
|
+
getDraftOrLiveEditHash(sdk, applicationConfig, logger),
|
|
269
|
+
sdk.fetchCurrentUser(),
|
|
270
|
+
]);
|
|
271
|
+
return results;
|
|
272
|
+
}
|
|
273
|
+
finally {
|
|
274
|
+
span.end();
|
|
275
|
+
}
|
|
276
|
+
});
|
|
277
|
+
aiService = new AiService({
|
|
278
|
+
superblocksBaseUrl: tokenConfig.superblocksBaseUrl,
|
|
279
|
+
appRootDirPath: options.cwd,
|
|
280
|
+
applicationId: applicationConfig.id,
|
|
281
|
+
organizationId: currentUser.organizations[0].id,
|
|
282
|
+
fsOperationQueue,
|
|
283
|
+
draftInterface: syncService,
|
|
284
|
+
rpcClient,
|
|
285
|
+
tracer,
|
|
286
|
+
logger,
|
|
287
|
+
tokenManager,
|
|
288
|
+
features: AiServiceFeatureFlags.create(currentUser.flagBootstrap),
|
|
289
|
+
pluginExecutionVersions: currentUser.organizations[0].pluginExecutionVersions,
|
|
290
|
+
});
|
|
291
|
+
await tracer.startActiveSpan("aiServiceInitialize", async (span) => {
|
|
292
|
+
try {
|
|
293
|
+
await aiService.initialize();
|
|
294
|
+
}
|
|
295
|
+
finally {
|
|
296
|
+
span.end();
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
const isSynced = localContents.hash === serverHash;
|
|
300
|
+
if (isSynced) {
|
|
301
|
+
logger.info(`Local files are in sync with the server on branch '${applicationConfig.branchName}', local hash: ${localContents.hash}, server hash: ${serverHash}`);
|
|
309
302
|
}
|
|
310
303
|
else {
|
|
311
|
-
logger.
|
|
304
|
+
logger.info(`Local files are out of sync with the server on branch '${applicationConfig.branchName}', local hash: ${localContents.hash}, server hash: ${serverHash}`);
|
|
305
|
+
}
|
|
306
|
+
if (!(downloadFirst || uploadFirst)) {
|
|
307
|
+
throw new Error("You must choose --download-first or --upload-first to use the dev command");
|
|
308
|
+
}
|
|
309
|
+
if (downloadFirst && uploadFirst) {
|
|
310
|
+
throw new Error("Choose either --download-first or --upload-first");
|
|
311
|
+
}
|
|
312
|
+
let hasPackageChanged = false;
|
|
313
|
+
const packageJsonBefore = await readPkgJson(cwd);
|
|
314
|
+
if (downloadFirst && !isSynced) {
|
|
315
|
+
await tracer.startActiveSpan("downloadFirst", async (span) => {
|
|
316
|
+
logger.info(`Starting download of branch '${applicationConfig.branchName}'`);
|
|
317
|
+
await syncService.downloadDirectory();
|
|
318
|
+
span.end();
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
let hasCliUpdated = false;
|
|
322
|
+
let upgradePromises = [];
|
|
323
|
+
const forceUpgrade = options.autoUpgradeMode === DevServerAutoUpgradeMode.FORCE;
|
|
324
|
+
// Determine whether we must try to auto-upgrade the CLI
|
|
325
|
+
if (!skipAutoUpgrade || forceUpgrade) {
|
|
326
|
+
await tracer.startActiveSpan("versionCheckAndUpgrade", async (span) => {
|
|
327
|
+
if (lockService) {
|
|
328
|
+
const applicationConfigWithTokenConfigAndUserInfo = {
|
|
329
|
+
...applicationConfig,
|
|
330
|
+
superblocksBaseUrl: tokenConfig.superblocksBaseUrl,
|
|
331
|
+
token: tokenConfig.token,
|
|
332
|
+
userId: currentUser.user.id,
|
|
333
|
+
userEmail: currentUser.user.email,
|
|
334
|
+
organizationId: currentUser.user.currentOrganizationId,
|
|
335
|
+
featureFlags: sdk.getFeatureFlagsForUser(currentUser),
|
|
336
|
+
};
|
|
337
|
+
const result = await checkVersionsAndWritePackageJson(lockService, applicationConfigWithTokenConfigAndUserInfo, forceUpgrade);
|
|
338
|
+
hasCliUpdated = result.cliUpdated;
|
|
339
|
+
upgradePromises = result.upgradePromises;
|
|
340
|
+
}
|
|
341
|
+
else {
|
|
342
|
+
logger.warn("Lock service is not available, skipping version check and upgrade");
|
|
343
|
+
}
|
|
344
|
+
span.end();
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
const packageJsonAfter = await readPkgJson(cwd);
|
|
348
|
+
if (packageJsonBefore && packageJsonAfter) {
|
|
349
|
+
hasPackageChanged =
|
|
350
|
+
JSON.stringify(packageJsonBefore, null, 2) !==
|
|
351
|
+
JSON.stringify(packageJsonAfter, null, 2);
|
|
352
|
+
}
|
|
353
|
+
else if (packageJsonAfter) {
|
|
354
|
+
hasPackageChanged = true;
|
|
355
|
+
logger.info("package.json was created, installing packages…");
|
|
356
|
+
}
|
|
357
|
+
if (hasPackageChanged || upgradePromises.length > 0) {
|
|
358
|
+
logger.info("Installing packages…");
|
|
359
|
+
await tracer.startActiveSpan("installPackages", async (span) => {
|
|
360
|
+
try {
|
|
361
|
+
// Upgrade global CLI and local packages in parallel - improves performance
|
|
362
|
+
await Promise.all([
|
|
363
|
+
...upgradePromises,
|
|
364
|
+
installPackages(cwd, logger),
|
|
365
|
+
]);
|
|
366
|
+
}
|
|
367
|
+
finally {
|
|
368
|
+
span.end();
|
|
369
|
+
}
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
else {
|
|
373
|
+
logger.info("package.json has not changed, skipping package installation");
|
|
374
|
+
}
|
|
375
|
+
if (hasPackageChanged || uploadFirst) {
|
|
376
|
+
logger.info(`Uploading local files to branch '${applicationConfig.branchName}' on server before starting`);
|
|
377
|
+
await tracer.startActiveSpan("uploadFirstOrPackageChanged", async (span) => {
|
|
378
|
+
await syncService.uploadDirectory("cli:sdk");
|
|
379
|
+
await syncService.uploadDirectoryNowIfNeeded("cli:sdk");
|
|
380
|
+
span.end();
|
|
381
|
+
});
|
|
382
|
+
}
|
|
383
|
+
if (hasCliUpdated) {
|
|
384
|
+
try {
|
|
385
|
+
logger.info("Releasing lock before restarting the dev server");
|
|
386
|
+
await aiService?.removeIntegrationCache();
|
|
387
|
+
await lockService?.shutdown({ serverInitiated: false });
|
|
388
|
+
}
|
|
389
|
+
catch (e) {
|
|
390
|
+
logger.error("Error releasing lock before restarting the dev server", getErrorMeta(e));
|
|
391
|
+
}
|
|
392
|
+
logger.info("CLI was updated, restarting the dev server…");
|
|
393
|
+
process.exit(AUTO_UPGRADE_EXIT_CODE);
|
|
312
394
|
}
|
|
313
|
-
span.end();
|
|
314
|
-
});
|
|
315
|
-
}
|
|
316
|
-
const packageJsonAfter = await readPkgJson(cwd);
|
|
317
|
-
if (packageJsonBefore && packageJsonAfter) {
|
|
318
|
-
hasPackageChanged =
|
|
319
|
-
JSON.stringify(packageJsonBefore, null, 2) !==
|
|
320
|
-
JSON.stringify(packageJsonAfter, null, 2);
|
|
321
|
-
}
|
|
322
|
-
else if (packageJsonAfter) {
|
|
323
|
-
hasPackageChanged = true;
|
|
324
|
-
logger.info("package.json was created, installing packages…");
|
|
325
|
-
}
|
|
326
|
-
if (hasPackageChanged || upgradePromises.length > 0) {
|
|
327
|
-
logger.info("Installing packages…");
|
|
328
|
-
await tracer.startActiveSpan("installPackages", async (span) => {
|
|
329
|
-
// Upgrade global CLI and local packages in parallel - improves performance
|
|
330
|
-
await Promise.all([
|
|
331
|
-
...upgradePromises,
|
|
332
|
-
installPackages(cwd, logger),
|
|
333
|
-
]);
|
|
334
|
-
span.end();
|
|
335
|
-
});
|
|
336
|
-
}
|
|
337
|
-
else {
|
|
338
|
-
logger.info("package.json has not changed, skipping package installation");
|
|
339
|
-
}
|
|
340
|
-
if (hasPackageChanged || uploadFirst) {
|
|
341
|
-
logger.info(`Uploading local files to branch '${applicationConfig.branchName}' on server before starting`);
|
|
342
|
-
await tracer.startActiveSpan("uploadFirstOrPackageChanged", async (span) => {
|
|
343
|
-
await syncService.uploadDirectory("cli:sdk");
|
|
344
|
-
await syncService.uploadDirectoryNowIfNeeded("cli:sdk");
|
|
345
|
-
span.end();
|
|
346
395
|
});
|
|
347
396
|
}
|
|
348
|
-
|
|
397
|
+
catch (error) {
|
|
398
|
+
logger.error(error.message);
|
|
349
399
|
try {
|
|
350
|
-
logger.info("Releasing lock before restarting the dev server");
|
|
351
400
|
await aiService?.removeIntegrationCache();
|
|
352
|
-
await lockService?.
|
|
401
|
+
await lockService?.shutdownAndExit();
|
|
353
402
|
}
|
|
354
|
-
|
|
355
|
-
|
|
403
|
+
finally {
|
|
404
|
+
// this is redundant, but it's here to make sure the lock service is shutdown and the process exits
|
|
405
|
+
process.exit(1);
|
|
356
406
|
}
|
|
357
|
-
logger.info("CLI was updated, restarting the dev server…");
|
|
358
|
-
process.exit(AUTO_UPGRADE_EXIT_CODE);
|
|
359
407
|
}
|
|
360
|
-
});
|
|
361
|
-
}
|
|
362
|
-
catch (error) {
|
|
363
|
-
logger.error(error.message);
|
|
364
|
-
try {
|
|
365
|
-
await aiService?.removeIntegrationCache();
|
|
366
|
-
await lockService?.shutdownAndExit();
|
|
367
408
|
}
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
process.exit(1);
|
|
409
|
+
else {
|
|
410
|
+
logger.info("Skipping directory sync");
|
|
371
411
|
}
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
logger: options.logger,
|
|
387
|
-
sdk,
|
|
388
|
-
});
|
|
389
|
-
span.end();
|
|
390
|
-
return result;
|
|
391
|
-
});
|
|
392
|
-
options.signal?.addEventListener("abort", () => {
|
|
393
|
-
logger.info("Server closed");
|
|
394
|
-
httpServer.close();
|
|
395
|
-
// Stop auth hot-reload server on abort
|
|
396
|
-
if (authHotReloadServer) {
|
|
397
|
-
authHotReloadServer.stop().catch((error) => {
|
|
398
|
-
logger.warn(`Error stopping auth hot-reload server: ${error}`);
|
|
412
|
+
const httpServer = await tracer.startActiveSpan("createDevServer", async (span) => {
|
|
413
|
+
const result = await createDevServer({
|
|
414
|
+
root: options.cwd,
|
|
415
|
+
mode: "development",
|
|
416
|
+
port: port,
|
|
417
|
+
fsOperationQueue,
|
|
418
|
+
syncService: syncService,
|
|
419
|
+
lockService: lockService,
|
|
420
|
+
aiService: aiService,
|
|
421
|
+
logger: options.logger,
|
|
422
|
+
sdk,
|
|
423
|
+
});
|
|
424
|
+
span.end();
|
|
425
|
+
return result;
|
|
399
426
|
});
|
|
427
|
+
options.signal?.addEventListener("abort", () => {
|
|
428
|
+
logger.info("Server closed");
|
|
429
|
+
httpServer.close();
|
|
430
|
+
// Stop auth hot-reload server on abort
|
|
431
|
+
if (authHotReloadServer) {
|
|
432
|
+
authHotReloadServer.stop().catch((error) => {
|
|
433
|
+
logger.warn(`Error stopping auth hot-reload server: ${error}`);
|
|
434
|
+
});
|
|
435
|
+
}
|
|
436
|
+
// Clean up AI service cache (must happen before app switches directories)
|
|
437
|
+
aiService?.removeIntegrationCache().catch((error) => {
|
|
438
|
+
logger.warn(`Error removing integration cache: ${error}`);
|
|
439
|
+
});
|
|
440
|
+
lockService?.shutdownAndExit().catch(() => {
|
|
441
|
+
// this is redundant, but it's here to make sure the lock service is shutdown and the process exits
|
|
442
|
+
process.exit(1);
|
|
443
|
+
});
|
|
444
|
+
});
|
|
445
|
+
logger.debug(green(`Local server started at port ${port}`));
|
|
446
|
+
logger.debug(green(`Visit your application at:`));
|
|
447
|
+
logger.debug(green(`http://localhost:${port}`));
|
|
448
|
+
startupSpan.end();
|
|
449
|
+
}
|
|
450
|
+
catch (error) {
|
|
451
|
+
startupSpan.setStatus({ code: SpanStatusCode.ERROR });
|
|
452
|
+
startupSpan.end();
|
|
453
|
+
throw error;
|
|
400
454
|
}
|
|
401
|
-
// Clean up AI service cache (must happen before app switches directories)
|
|
402
|
-
aiService?.removeIntegrationCache().catch((error) => {
|
|
403
|
-
logger.warn(`Error removing integration cache: ${error}`);
|
|
404
|
-
});
|
|
405
|
-
lockService?.shutdownAndExit().catch(() => {
|
|
406
|
-
// this is redundant, but it's here to make sure the lock service is shutdown and the process exits
|
|
407
|
-
process.exit(1);
|
|
408
|
-
});
|
|
409
455
|
});
|
|
410
|
-
logger.debug(green(`Local server started at port ${port}`));
|
|
411
|
-
logger.debug(green(`Visit your application at:`));
|
|
412
|
-
logger.debug(green(`http://localhost:${port}`));
|
|
413
456
|
}
|
|
414
457
|
async function getDraftOrLiveEditHash(sdk, applicationConfig, logger) {
|
|
415
458
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.mjs","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dev.mjs","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"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"}
|