aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alexander Niebuhr <alexander@nbhr.io> 2024-09-17 07:52:50 +0200
committerGravatar Alexander Niebuhr <alexander@nbhr.io> 2024-09-17 07:52:50 +0200
commit66b2fe25157dfe8ed27ed915ff724f0ea74997ca (patch)
treea84e8c1e1bc8ba3627e29e34da5ce48a3cdab033
parent7072f16e4834f756fc8f96b75f9876876ca1eac3 (diff)
parent31c7767ee899ddc7ef8ef963263cbf3a8faf8901 (diff)
downloadastro-66b2fe25157dfe8ed27ed915ff724f0ea74997ca.tar.gz
astro-66b2fe25157dfe8ed27ed915ff724f0ea74997ca.tar.zst
astro-66b2fe25157dfe8ed27ed915ff724f0ea74997ca.zip
Merge branch 'main' into next
-rw-r--r--packages/integrations/node/package.json11
-rw-r--r--packages/integrations/node/src/middleware.ts2
-rw-r--r--packages/integrations/node/src/preview.ts2
-rw-r--r--packages/integrations/node/test/api-route.test.js30
-rw-r--r--packages/integrations/node/test/encoded.test.js6
-rw-r--r--packages/integrations/node/test/headers.test.js3
-rw-r--r--packages/integrations/node/test/locals.test.js24
-rw-r--r--packages/integrations/node/test/node-middleware.test.js3
-rw-r--r--packages/integrations/node/test/prerender-404-500.test.js12
-rw-r--r--packages/integrations/node/test/prerender.test.js18
-rw-r--r--packages/integrations/node/test/test-utils.js18
-rw-r--r--packages/integrations/node/test/trailing-slash.test.js18
-rw-r--r--packages/integrations/node/test/url.test.js18
13 files changed, 60 insertions, 105 deletions
diff --git a/packages/integrations/node/package.json b/packages/integrations/node/package.json
index d7ccffd1f..e2f171038 100644
--- a/packages/integrations/node/package.json
+++ b/packages/integrations/node/package.json
@@ -11,7 +11,10 @@
"url": "https://github.com/withastro/adapters.git",
"directory": "packages/node"
},
- "keywords": ["withastro", "astro-adapter"],
+ "keywords": [
+ "withastro",
+ "astro-adapter"
+ ],
"bugs": "https://github.com/withastro/adapters/issues",
"homepage": "https://docs.astro.build/en/guides/integrations-guide/node/",
"exports": {
@@ -20,7 +23,9 @@
"./preview.js": "./dist/preview.js",
"./package.json": "./package.json"
},
- "files": ["dist"],
+ "files": [
+ "dist"
+ ],
"scripts": {
"build": "tsc",
"test": "astro-scripts test \"test/**/*.test.js\""
@@ -34,7 +39,7 @@
},
"devDependencies": {
"@astrojs/test-utils": "workspace:*",
- "@types/node": "^18.17.8",
+ "@types/node": "^18.19.50",
"@types/send": "^0.17.4",
"@types/server-destroy": "^1.0.4",
"astro": "^5.0.0-alpha.8",
diff --git a/packages/integrations/node/src/middleware.ts b/packages/integrations/node/src/middleware.ts
index 169404064..aeee6cf2e 100644
--- a/packages/integrations/node/src/middleware.ts
+++ b/packages/integrations/node/src/middleware.ts
@@ -15,7 +15,7 @@ export default function createMiddleware(app: NodeApp): RequestHandler {
const logger = app.getAdapterLogger();
// using spread args because express trips up if the function's
// stringified body includes req, res, next, locals directly
- return async function (...args) {
+ return async (...args) => {
// assume normal invocation at first
const [req, res, next, locals] = args;
// short circuit if it is an error invocation
diff --git a/packages/integrations/node/src/preview.ts b/packages/integrations/node/src/preview.ts
index b6666129d..0517e2c0b 100644
--- a/packages/integrations/node/src/preview.ts
+++ b/packages/integrations/node/src/preview.ts
@@ -8,7 +8,7 @@ import { createServer } from './standalone.js';
type ServerModule = ReturnType<typeof createExports>;
type MaybeServerModule = Partial<ServerModule>;
-const createPreviewServer: CreatePreviewServer = async function (preview) {
+const createPreviewServer: CreatePreviewServer = async (preview) => {
let ssrHandler: ServerModule['handler'];
let options: ServerModule['options'];
try {
diff --git a/packages/integrations/node/test/api-route.test.js b/packages/integrations/node/test/api-route.test.js
index 63324c51c..05cdcd637 100644
--- a/packages/integrations/node/test/api-route.test.js
+++ b/packages/integrations/node/test/api-route.test.js
@@ -27,8 +27,7 @@ describe('API routes', () => {
it('Can get the request body', async () => {
const { handler } = await import('./fixtures/api-route/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, done } = createRequestAndResponse({
+ const { req, res, done } = createRequestAndResponse({
method: 'POST',
url: '/recipes',
});
@@ -39,11 +38,9 @@ describe('API routes', () => {
handler(req, res);
- // biome-ignore lint/style/useConst: <explanation>
- let [buffer] = await done;
+ const [buffer] = await done;
- // biome-ignore lint/style/useConst: <explanation>
- let json = JSON.parse(buffer.toString('utf-8'));
+ const json = JSON.parse(buffer.toString('utf-8'));
assert.equal(json.length, 1);
@@ -53,8 +50,7 @@ describe('API routes', () => {
it('Can get binary data', async () => {
const { handler } = await import('./fixtures/api-route/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, done } = createRequestAndResponse({
+ const { req, res, done } = createRequestAndResponse({
method: 'POST',
url: '/binary',
});
@@ -65,18 +61,15 @@ describe('API routes', () => {
handler(req, res);
- // biome-ignore lint/style/useConst: <explanation>
- let [out] = await done;
- // biome-ignore lint/style/useConst: <explanation>
- let arr = Array.from(new Uint8Array(out.buffer));
+ const [out] = await done;
+ const arr = Array.from(new Uint8Array(out.buffer));
assert.deepEqual(arr, [5, 4, 3, 2, 1]);
});
it('Can post large binary data', async () => {
const { handler } = await import('./fixtures/api-route/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, done } = createRequestAndResponse({
+ const { req, res, done } = createRequestAndResponse({
method: 'POST',
url: '/hash',
});
@@ -102,20 +95,17 @@ describe('API routes', () => {
expectedDigest = hash.digest();
});
- // biome-ignore lint/style/useConst: <explanation>
- let [out] = await done;
+ const [out] = await done;
assert.deepEqual(new Uint8Array(out.buffer), new Uint8Array(expectedDigest));
});
it('Can bail on streaming', async () => {
const { handler } = await import('./fixtures/api-route/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, done } = createRequestAndResponse({
+ const { req, res, done } = createRequestAndResponse({
url: '/streaming',
});
- // biome-ignore lint/style/useConst: <explanation>
- let locals = { cancelledByTheServer: false };
+ const locals = { cancelledByTheServer: false };
handler(req, res, () => {}, locals);
req.send();
diff --git a/packages/integrations/node/test/encoded.test.js b/packages/integrations/node/test/encoded.test.js
index bea3e95f1..4fc97cf7f 100644
--- a/packages/integrations/node/test/encoded.test.js
+++ b/packages/integrations/node/test/encoded.test.js
@@ -18,8 +18,7 @@ describe('Encoded Pathname', () => {
it('Can get an Astro file', async () => {
const { handler } = await import('./fixtures/encoded/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
url: '/什么',
});
@@ -33,8 +32,7 @@ describe('Encoded Pathname', () => {
it('Can get a Markdown file', async () => {
const { handler } = await import('./fixtures/encoded/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
url: '/blog/什么',
});
diff --git a/packages/integrations/node/test/headers.test.js b/packages/integrations/node/test/headers.test.js
index 8342e28da..f2753517e 100644
--- a/packages/integrations/node/test/headers.test.js
+++ b/packages/integrations/node/test/headers.test.js
@@ -132,8 +132,7 @@ describe('Node Adapter Headers', () => {
async function runTest(url, expectedHeaders) {
const { handler } = await import('./fixtures/headers/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, done } = createRequestAndResponse({
+ const { req, res, done } = createRequestAndResponse({
method: 'GET',
url,
});
diff --git a/packages/integrations/node/test/locals.test.js b/packages/integrations/node/test/locals.test.js
index a232ed299..b8e3ed40f 100644
--- a/packages/integrations/node/test/locals.test.js
+++ b/packages/integrations/node/test/locals.test.js
@@ -18,27 +18,23 @@ describe('API routes', () => {
it('Can use locals added by node middleware', async () => {
const { handler } = await import('./fixtures/locals/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
url: '/from-node-middleware',
});
- // biome-ignore lint/style/useConst: <explanation>
- let locals = { foo: 'bar' };
+ const locals = { foo: 'bar' };
handler(req, res, () => {}, locals);
req.send();
- // biome-ignore lint/style/useConst: <explanation>
- let html = await text();
+ const html = await text();
assert.equal(html.includes('<h1>bar</h1>'), true);
});
it('Throws an error when provided non-objects as locals', async () => {
const { handler } = await import('./fixtures/locals/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, done } = createRequestAndResponse({
+ const { req, res, done } = createRequestAndResponse({
url: '/from-node-middleware',
});
@@ -66,23 +62,19 @@ describe('API routes', () => {
it('Can access locals in API', async () => {
const { handler } = await import('./fixtures/locals/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, done } = createRequestAndResponse({
+ const { req, res, done } = createRequestAndResponse({
method: 'POST',
url: '/api',
});
- // biome-ignore lint/style/useConst: <explanation>
- let locals = { foo: 'bar' };
+ const locals = { foo: 'bar' };
handler(req, res, () => {}, locals);
req.send();
- // biome-ignore lint/style/useConst: <explanation>
- let [buffer] = await done;
+ const [buffer] = await done;
- // biome-ignore lint/style/useConst: <explanation>
- let json = JSON.parse(buffer.toString('utf-8'));
+ const json = JSON.parse(buffer.toString('utf-8'));
assert.equal(json.foo, 'bar');
});
diff --git a/packages/integrations/node/test/node-middleware.test.js b/packages/integrations/node/test/node-middleware.test.js
index 0ff741a7f..eeb193c73 100644
--- a/packages/integrations/node/test/node-middleware.test.js
+++ b/packages/integrations/node/test/node-middleware.test.js
@@ -23,8 +23,7 @@ describe('behavior from middleware, standalone', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
diff --git a/packages/integrations/node/test/prerender-404-500.test.js b/packages/integrations/node/test/prerender-404-500.test.js
index 1c8a28cdb..a7e968f0c 100644
--- a/packages/integrations/node/test/prerender-404-500.test.js
+++ b/packages/integrations/node/test/prerender-404-500.test.js
@@ -30,8 +30,7 @@ describe('Prerender 404', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -117,8 +116,7 @@ describe('Prerender 404', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -183,8 +181,7 @@ describe('Hybrid 404', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -242,8 +239,7 @@ describe('Hybrid 404', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
diff --git a/packages/integrations/node/test/prerender.test.js b/packages/integrations/node/test/prerender.test.js
index 311b18bd9..71137b76a 100644
--- a/packages/integrations/node/test/prerender.test.js
+++ b/packages/integrations/node/test/prerender.test.js
@@ -26,8 +26,7 @@ describe('Prerendering', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -99,8 +98,7 @@ describe('Prerendering', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -173,8 +171,7 @@ describe('Prerendering', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -266,8 +263,7 @@ describe('Hybrid rendering', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -337,8 +333,7 @@ describe('Hybrid rendering', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -400,8 +395,7 @@ describe('Hybrid rendering', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
diff --git a/packages/integrations/node/test/test-utils.js b/packages/integrations/node/test/test-utils.js
index d396a701a..37389d6d7 100644
--- a/packages/integrations/node/test/test-utils.js
+++ b/packages/integrations/node/test/test-utils.js
@@ -20,22 +20,18 @@ export function loadFixture(inlineConfig) {
}
export function createRequestAndResponse(reqOptions) {
- // biome-ignore lint/style/useConst: <explanation>
- let req = httpMocks.createRequest(reqOptions);
+ const req = httpMocks.createRequest(reqOptions);
- // biome-ignore lint/style/useConst: <explanation>
- let res = httpMocks.createResponse({
+ const res = httpMocks.createResponse({
eventEmitter: EventEmitter,
req,
});
- // biome-ignore lint/style/useConst: <explanation>
- let done = toPromise(res);
+ const done = toPromise(res);
// Get the response as text
const text = async () => {
- // biome-ignore lint/style/useConst: <explanation>
- let chunks = await done;
+ const chunks = await done;
return buffersToString(chunks);
};
@@ -55,16 +51,14 @@ export function toPromise(res) {
return write.call(this, data, encoding);
};
res.on('end', () => {
- // biome-ignore lint/style/useConst: <explanation>
- let chunks = res._getChunks();
+ const chunks = res._getChunks();
resolve(chunks);
});
});
}
export function buffersToString(buffers) {
- // biome-ignore lint/style/useConst: <explanation>
- let decoder = new TextDecoder();
+ const decoder = new TextDecoder();
let str = '';
for (const buffer of buffers) {
str += decoder.decode(buffer);
diff --git a/packages/integrations/node/test/trailing-slash.test.js b/packages/integrations/node/test/trailing-slash.test.js
index 0ed46e9aa..2a73efa75 100644
--- a/packages/integrations/node/test/trailing-slash.test.js
+++ b/packages/integrations/node/test/trailing-slash.test.js
@@ -28,8 +28,7 @@ describe('Trailing slash', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -97,8 +96,7 @@ describe('Trailing slash', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -169,8 +167,7 @@ describe('Trailing slash', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -231,8 +228,7 @@ describe('Trailing slash', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -296,8 +292,7 @@ describe('Trailing slash', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
@@ -376,8 +371,7 @@ describe('Trailing slash', () => {
});
await fixture.build();
const { startServer } = await fixture.loadAdapterEntryModule();
- // biome-ignore lint/style/useConst: <explanation>
- let res = startServer();
+ const res = startServer();
server = res.server;
await waitServerListen(server.server);
});
diff --git a/packages/integrations/node/test/url.test.js b/packages/integrations/node/test/url.test.js
index 0b19c693b..81b357b71 100644
--- a/packages/integrations/node/test/url.test.js
+++ b/packages/integrations/node/test/url.test.js
@@ -20,8 +20,7 @@ describe('URL', () => {
it('return http when non-secure', async () => {
const { handler } = await import('./fixtures/url/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
url: '/',
});
@@ -34,8 +33,7 @@ describe('URL', () => {
it('return https when secure', async () => {
const { handler } = await import('./fixtures/url/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
socket: new TLSSocket(),
url: '/',
});
@@ -49,8 +47,7 @@ describe('URL', () => {
it('return http when the X-Forwarded-Proto header is set to http', async () => {
const { handler } = await import('./fixtures/url/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
headers: { 'X-Forwarded-Proto': 'http' },
url: '/',
});
@@ -64,8 +61,7 @@ describe('URL', () => {
it('return https when the X-Forwarded-Proto header is set to https', async () => {
const { handler } = await import('./fixtures/url/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
headers: { 'X-Forwarded-Proto': 'https' },
url: '/',
});
@@ -79,8 +75,7 @@ describe('URL', () => {
it('includes forwarded host and port in the url', async () => {
const { handler } = await import('./fixtures/url/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
headers: {
'X-Forwarded-Proto': 'https',
'X-Forwarded-Host': 'abc.xyz',
@@ -100,8 +95,7 @@ describe('URL', () => {
it('accepts port in forwarded host and forwarded port', async () => {
const { handler } = await import('./fixtures/url/dist/server/entry.mjs');
- // biome-ignore lint/style/useConst: <explanation>
- let { req, res, text } = createRequestAndResponse({
+ const { req, res, text } = createRequestAndResponse({
headers: {
'X-Forwarded-Proto': 'https',
'X-Forwarded-Host': 'abc.xyz:444',