From 50e5e576bcf840add9d32ee429cddc1ffb9c7055 Mon Sep 17 00:00:00 2001 From: matthewp Date: Thu, 3 Nov 2022 12:07:39 +0000 Subject: [PATCH] [ci] format --- packages/astro/src/cli/index.ts | 9 +-- packages/astro/src/core/config/config.ts | 2 +- packages/astro/src/core/dev/container.ts | 12 +-- packages/astro/src/core/dev/dev.ts | 4 +- packages/astro/src/core/dev/index.ts | 10 +-- packages/astro/src/core/dev/restart.ts | 78 ++++++++----------- packages/astro/test/units/dev/restart.test.js | 21 +++-- 7 files changed, 60 insertions(+), 76 deletions(-) diff --git a/packages/astro/src/cli/index.ts b/packages/astro/src/cli/index.ts index 5f9cb2452f..ca71b21e12 100644 --- a/packages/astro/src/cli/index.ts +++ b/packages/astro/src/cli/index.ts @@ -1,7 +1,6 @@ /* eslint-disable no-console */ import * as colors from 'kleur/colors'; import { pathToFileURL } from 'url'; -import { normalizePath } from 'vite'; import type { Arguments as Flags } from 'yargs-parser'; import yargs from 'yargs-parser'; import { z } from 'zod'; @@ -12,7 +11,6 @@ import { openConfig, resolveConfigPath, resolveFlags, - resolveRoot, } from '../core/config/index.js'; import { ASTRO_VERSION } from '../core/constants.js'; import devServer from '../core/dev/index.js'; @@ -21,7 +19,6 @@ import { createSafeError } from '../core/errors/index.js'; import { debug, error, info, LogOptions } from '../core/logger/core.js'; import { enableVerboseLogging, nodeLogDestination } from '../core/logger/node.js'; import { formatConfigErrorMessage, formatErrorMessage, printHelp } from '../core/messages.js'; -import { appendForwardSlash } from '../core/path.js'; import preview from '../core/preview/index.js'; import * as event from '../events/index.js'; import { eventConfigError, eventError, telemetry } from '../events/index.js'; @@ -178,9 +175,7 @@ async function runCommand(cmd: string, flags: yargs.Arguments) { switch (cmd) { case 'dev': { const configFlag = resolveFlags(flags).config; - const configFlagPath = configFlag - ? await resolveConfigPath({ cwd: root, flags }) - : undefined; + const configFlagPath = configFlag ? await resolveConfigPath({ cwd: root, flags }) : undefined; await devServer(settings, { configFlag, @@ -190,7 +185,7 @@ async function runCommand(cmd: string, flags: yargs.Arguments) { handleConfigError(e) { handleConfigError(e, { cwd: root, flags, logging }); info(logging, 'astro', 'Continuing with previous valid configuration\n'); - } + }, }); return await new Promise(() => {}); // lives forever } diff --git a/packages/astro/src/core/config/config.ts b/packages/astro/src/core/config/config.ts index ec96bb8c5a..ea0725d762 100644 --- a/packages/astro/src/core/config/config.ts +++ b/packages/astro/src/core/config/config.ts @@ -106,7 +106,7 @@ export function resolveFlags(flags: Partial): CLIFlags { } export function resolveRoot(cwd?: string | URL): string { - if(cwd instanceof URL) { + if (cwd instanceof URL) { cwd = fileURLToPath(cwd); } return cwd ? path.resolve(cwd) : process.cwd(); diff --git a/packages/astro/src/core/dev/container.ts b/packages/astro/src/core/dev/container.ts index e98cbfc4cf..c9eaaa8eb5 100644 --- a/packages/astro/src/core/dev/container.ts +++ b/packages/astro/src/core/dev/container.ts @@ -7,15 +7,15 @@ import * as vite from 'vite'; import { runHookConfigDone, runHookConfigSetup, + runHookServerDone, runHookServerSetup, runHookServerStart, - runHookServerDone } from '../../integrations/index.js'; import { createDefaultDevSettings, resolveRoot } from '../config/index.js'; import { createVite } from '../create-vite.js'; import { LogOptions } from '../logger/core.js'; -import { appendForwardSlash } from '../path.js'; import { nodeLogDestination } from '../logger/node.js'; +import { appendForwardSlash } from '../path.js'; import { apply as applyPolyfill } from '../polyfill.js'; const defaultLogging: LogOptions = { @@ -108,17 +108,13 @@ export async function createContainer(params: CreateContainerParams = {}): Promi // TODO deprecate and remove close() { return closeContainer(container); - } + }, }; return container; } -async function closeContainer({ - viteServer, - settings, - logging -}: Container) { +async function closeContainer({ viteServer, settings, logging }: Container) { await viteServer.close(); await runHookServerDone({ config: settings.config, diff --git a/packages/astro/src/core/dev/dev.ts b/packages/astro/src/core/dev/dev.ts index 5868424b18..62c01ce785 100644 --- a/packages/astro/src/core/dev/dev.ts +++ b/packages/astro/src/core/dev/dev.ts @@ -1,6 +1,6 @@ import type { AstroTelemetry } from '@astrojs/telemetry'; -import type { AddressInfo } from 'net'; import type http from 'http'; +import type { AddressInfo } from 'net'; import { performance } from 'perf_hooks'; import * as vite from 'vite'; import type { AstroSettings } from '../../@types/astro'; @@ -43,7 +43,7 @@ export default async function dev( settings, logging: options.logging, isRestart: options.isRestart, - } + }, }); // Start listening to the port diff --git a/packages/astro/src/core/dev/index.ts b/packages/astro/src/core/dev/index.ts index 70247b6597..7c0ed10fdb 100644 --- a/packages/astro/src/core/dev/index.ts +++ b/packages/astro/src/core/dev/index.ts @@ -1,9 +1,3 @@ -export { - createContainer, - runInContainer, - startContainer -} from './container.js'; -export { - createContainerWithAutomaticRestart -} from './restart.js'; +export { createContainer, runInContainer, startContainer } from './container.js'; export { default } from './dev.js'; +export { createContainerWithAutomaticRestart } from './restart.js'; diff --git a/packages/astro/src/core/dev/restart.ts b/packages/astro/src/core/dev/restart.ts index 515d226d61..edbc9af02d 100644 --- a/packages/astro/src/core/dev/restart.ts +++ b/packages/astro/src/core/dev/restart.ts @@ -1,19 +1,16 @@ -import type { AstroSettings } from '../../@types/astro'; -import type { Container, CreateContainerParams } from './container'; import * as vite from 'vite'; +import type { AstroSettings } from '../../@types/astro'; import { createSettings, openConfig } from '../config/index.js'; -import { info } from '../logger/core.js'; -import { createContainer, isStarted, startContainer } from './container.js'; import { createSafeError } from '../errors/index.js'; +import { info } from '../logger/core.js'; +import type { Container, CreateContainerParams } from './container'; +import { createContainer, isStarted, startContainer } from './container.js'; -async function createRestartedContainer(container: Container, settings: AstroSettings): Promise { - const { - logging, - fs, - resolvedRoot, - configFlag, - configFlagPath - } = container; +async function createRestartedContainer( + container: Container, + settings: AstroSettings +): Promise { + const { logging, fs, resolvedRoot, configFlag, configFlagPath } = container; const needsStart = isStarted(container); const newContainer = await createContainer({ isRestart: true, @@ -25,26 +22,24 @@ async function createRestartedContainer(container: Container, settings: AstroSet configFlagPath, }); - if(needsStart) { + if (needsStart) { await startContainer(newContainer); } return newContainer; } -export function shouldRestartContainer({ - settings, - configFlag, - configFlagPath, - restartInFlight -}: Container, changedFile: string): boolean { - if(restartInFlight) return false; +export function shouldRestartContainer( + { settings, configFlag, configFlagPath, restartInFlight }: Container, + changedFile: string +): boolean { + if (restartInFlight) return false; let shouldRestart = false; // If the config file changed, reload the config and restart the server. - if(configFlag) { - if(!!configFlagPath) { + if (configFlag) { + if (!!configFlagPath) { shouldRestart = vite.normalizePath(configFlagPath) === vite.normalizePath(changedFile); } } @@ -78,19 +73,14 @@ export async function restartContainer({ flags, logMsg, handleConfigError, - beforeRestart -}: RestartContainerParams): Promise<{ container: Container, error: Error | null }> { - const { - logging, - close, - resolvedRoot, - settings: existingSettings - } = container; + beforeRestart, +}: RestartContainerParams): Promise<{ container: Container; error: Error | null }> { + const { logging, close, resolvedRoot, settings: existingSettings } = container; container.restartInFlight = true; //console.clear(); // TODO move this - if(beforeRestart) { - beforeRestart() + if (beforeRestart) { + beforeRestart(); } try { const newConfig = await openConfig({ @@ -107,7 +97,7 @@ export async function restartContainer({ await close(); return { container: await createRestartedContainer(container, settings), - error: null + error: null, }; } catch (_err) { const error = createSafeError(_err); @@ -116,7 +106,7 @@ export async function restartContainer({ info(logging, 'astro', 'Continuing with previous valid configuration\n'); return { container: await createRestartedContainer(container, existingSettings), - error + error, }; } } @@ -137,11 +127,11 @@ export async function createContainerWithAutomaticRestart({ flags, handleConfigError = (_e: Error) => {}, beforeRestart, - params + params, }: CreateContainerWithAutomaticRestart): Promise { const initialContainer = await createContainer(params); let resolveRestart: (value: Error | null) => void; - let restartComplete = new Promise(resolve => { + let restartComplete = new Promise((resolve) => { resolveRestart = resolve; }); @@ -149,14 +139,14 @@ export async function createContainerWithAutomaticRestart({ container: initialContainer, restarted() { return restartComplete; - } + }, }; function handleServerRestart(logMsg: string) { // eslint-disable-next-line @typescript-eslint/no-shadow const container = restart.container; - return async function(changedFile: string) { - if(shouldRestartContainer(container, changedFile)) { + return async function (changedFile: string) { + if (shouldRestartContainer(container, changedFile)) { const { container: newContainer, error } = await restartContainer({ beforeRestart, container, @@ -169,20 +159,20 @@ export async function createContainerWithAutomaticRestart({ type: 'error', err: { message: err.message, - stack: err.stack || '' - } + stack: err.stack || '', + }, }); - } + }, }); restart.container = newContainer; // Add new watches because this is a new container with a new Vite server addWatches(); resolveRestart(error); - restartComplete = new Promise(resolve => { + restartComplete = new Promise((resolve) => { resolveRestart = resolve; }); } - } + }; } // Set up watches diff --git a/packages/astro/test/units/dev/restart.test.js b/packages/astro/test/units/dev/restart.test.js index 10907a4f6c..a993019c4c 100644 --- a/packages/astro/test/units/dev/restart.test.js +++ b/packages/astro/test/units/dev/restart.test.js @@ -1,7 +1,10 @@ import { expect } from 'chai'; import * as cheerio from 'cheerio'; -import { createContainerWithAutomaticRestart, runInContainer } from '../../../dist/core/dev/index.js'; +import { + createContainerWithAutomaticRestart, + runInContainer, +} from '../../../dist/core/dev/index.js'; import { createFs, createRequestAndResponse } from '../test-utils.js'; const root = new URL('../../fixtures/alias/', import.meta.url); @@ -20,13 +23,13 @@ describe('dev container restarts', () => { `, '/astro.config.mjs': ` - ` + `, }, root ); let restart = await createContainerWithAutomaticRestart({ - params: { fs, root } + params: { fs, root }, }); try { @@ -39,13 +42,16 @@ describe('dev container restarts', () => { const $ = cheerio.load(html); expect(r.res.statusCode).to.equal(200); expect($('h1')).to.have.a.lengthOf(1); - + // Create an error let restartComplete = restart.restarted(); fs.writeFileFromRootSync('/astro.config.mjs', 'const foo = bar'); // Vite watches the real filesystem, so we have to mock this part. It's not so bad. - restart.container.viteServer.watcher.emit('change', fs.getFullyResolvedPath('/astro.config.mjs')); + restart.container.viteServer.watcher.emit( + 'change', + fs.getFullyResolvedPath('/astro.config.mjs') + ); // Wait for the restart to finish let hmrError = await restartComplete; @@ -57,7 +63,10 @@ describe('dev container restarts', () => { fs.writeFileFromRootSync('/astro.config.mjs', 'const foo = bar2'); // Vite watches the real filesystem, so we have to mock this part. It's not so bad. - restart.container.viteServer.watcher.emit('change', fs.getFullyResolvedPath('/astro.config.mjs')); + restart.container.viteServer.watcher.emit( + 'change', + fs.getFullyResolvedPath('/astro.config.mjs') + ); hmrError = await restartComplete; expect(hmrError).to.not.be.a('undefined');